我有一个关于如何将Frisby.js与使用SSL客户端证书的REST服务一起使用的问题。
如果我使用请求包与服务对话,我可以这样做:
request.get(URL, {
agentOptions: {
// Or use `pfx` property replacing `cert` and `key` when using private key, certificate and CA certs in PFX or PKCS12 format:
pfx: fs.readFileSync(pfxFilePath),
passphrase: 'password',
ca: fs.readFileSync(caFilePath)
}
});因为Frisby使用request,所以我假设我可以在Frisby测试中做一些类似的事情,但是我似乎不能得到正确的语法。
你能推荐一些可能有用的东西吗?谢谢..。
发布于 2015-06-10 21:49:23
.get()和.post()方法可以采用内容类似于https.request()的options参数的附加结构。您将需要为(某些):pfx、key、cert、ca和passphrase提供值。
如下所示:
var fs = require('fs');
var frisby = require('frisby');
frisbee.create( 'Test name' )
.get(
'https://localhost/rest/endpoint',
{
key: fs.readFileSync( "/path/to/certificates/certificate.key" ),
cert: fs.readFileSync( "/path/to/certificates/certificate.crt" ),
ca: fs.readFileSync( "/path/to/certificates/ca.crt" ),
passphrase: "your pass phrase"
}
)
.expectStatus( 200 )
.toss();https://stackoverflow.com/questions/28157351
复制相似问题