node-request - 获取错误"SSL23_GET_SERVER_HELLO:未知协议"

umu*_*utm 70 ssl request node.js

我正在使用节点请求模块,定期向一组URL发送GET请求,有时在某些站点上收到以下错误.

Error: 29472:error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol:openssl\ssl\s23_clnt.c:683

问题是我总是或总是在某些URL上得到此错误,有时候.另外,用" strictSSL: false" 不能忽略它.

我已经读过这可能与我使用错误的协议(SSLv2,SSLv3,TLS ..)发送SSL请求有关.但这并不能解释为什么它会不规则地发生.

顺便说一句,我在Win 2008服务器上运行nodejs.

任何帮助表示赞赏.

小智 106

当您通过错误的端口(例如80)请求HTTPS资源时,您将收到此类错误消息.因此,请确保在"请求"选项中指定了正确的端口443.


umu*_*utm 16

这完全是我的坏事.

我在代码的一部分上使用标准节点http.request,该代码应该仅向http地址发送请求.似乎db有一个https地址,该地址以随机间隔查询.

简单地说,我试图向https发送http请求.

  • 该错误看起来更像是向http端口发送https请求? (6认同)
  • 错误消息清楚地表明您使用的是HTTPS,即SSL,并且服务器也在SSL中向您发送了"未知协议"消息.您不会对数据库说HTTP或HTTPS.答案没有意义. (2认同)

Ben*_*Ben 5

我收到此错误的原因是我正在使用本require('https')应使用的位置require('http')