Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Get method of frisby does not work with https

I am new to frisby test. today i found I can't access https://ip address from friby api

for example:

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

please advise!

like image 1000
cppython Avatar asked Mar 03 '26 00:03

cppython


2 Answers

This is beacuse the unsafe connection (non-trusted SSL certificate). If you open same URL in a browser, it will ask for confirmation before to continue with the insecure connection.

To do the same thing in frisby, add a second param to .get(...) method to specify strictSSL = false as follows:

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();
like image 103
leo.fcx Avatar answered Mar 05 '26 14:03

leo.fcx


This is due to non-trusted SSL certificate. you can include this line at the beginning of your firsby test:

process.env.NODE_TLS_REJECT_UNAUTHORIZED = "0"

This will direct non-rejection of SSL cert.

like image 25
Hitesh Bajaj Avatar answered Mar 05 '26 12:03

Hitesh Bajaj