关于请求中,https请求报错问题
在使用axios做爬虫的时候,发现其中一个http的网站居然直接报错了,这在其他https的网站中没发现过,最后发现竟是他证书问题
解决方法:
绕过证书认证,直接请求
npm install axios --save
npm install https --save
const ignoreSSL = axios.create({
httpsAgent: new https.Agent({
rejectUnauthorized: false
})
});
ignoreSSL.get("域名")
问题解决
关于请求后响应体data为空的问题
还是在爬虫中遇到的坑,原因是axios默认是不带 Connect 的,我们只需要在请求头加上即可
axios.defaults.headers['Connection'] = 'keep-alive'
在请求前加上这句代码即可
扩展:还是关于这个问题,在查找问题的时候,我还发现,如果这里我们设置了响应头的格式,比如在请求前,我指定了json格式的响应头,那么如果我们返回的不是该格式的数据的话,那么这里也会为空;最容易犯错的就是json格式的数据