获取frisby的方法不适用于https

时间:2015-08-26 06:52:16

标签: javascript frisby.js

我是弗里斯比测试的新手。今天我发现我无法从friby api

访问https://ip地址

例如:

frisby.create('my test').get("https://199.59.148.20")
output: connect error

frisby.create('my test').get("https://api.twitter.com")
this one works

请指教!

2 个答案:

答案 0 :(得分:3)

这是不安全的连接(不可信的SSL证书)。如果您在浏览器中打开相同的URL,它将在继续使用不安全的连接之前请求确认。

要在frisby中执行相同操作,请在.get(...)方法中添加第二个参数,以指定strictSSL = false,如下所示:

var frisby = require('frisby');

frisby.create('Get a https resource')
      .get('https://199.59.148.20', { strictSSL: false })
      .expectStatus(200) // For this case/IP-address this fails as it returns a 404
      .inspectBody()
      .toss();

答案 1 :(得分:1)

这是由于不受信任的SSL证书。你可以在第一次测试开始时包括这一行:

process.env.NODE_TLS_REJECT_UNAUTHORIZED = "0"

这将指示不拒绝SSL证书。