【发布时间】:2012-06-18 22:26:02
【问题描述】:
我正在尝试通过节点 https.request() 获取网页。这样做会导致我的代码记录错误。使用节点请求模块的结果是一样的:
请求问题:140398870042432:error:140773F2:SSL 例程:SSL23_GET_SERVER_HELLO:sslv3 警报意外消息:s23_clnt.c:658:
以下表示使用了错误的 SSL 版本,但我找不到更改版本的方法:curl error: "sslv3 alert unexpected message"。从我的终端使用 curl 会返回响应,就像在我的浏览器中点击 URL(它是一个登录页面)一样。我的代码如下。
var request = require('request')
request.get("https://icmserver.wit.ie/balance", function(err, res, body) {
if (err) {
return console.log(err)
}
return body;
});
有人知道这里会发生什么吗?
【问题讨论】:
-
您能告诉我们您使用的确切代码吗?如果我们能重现这个问题会有所帮助。
-
谢谢 Len,这是我的代码: var request = require('request') request.get("icmserver.wit.ie/balance", function(err, res, body){ if(err){ return console.log(err) } 返回正文; });它不断记录 SSL 错误。
-
我注意到,当我在 Chrome 中访问该站点时,我得到:“必须使用 SSL 3.0 重试连接。这通常意味着服务器正在使用非常旧的软件并且可能有其他安全问题。”可能 Node 的内置 SSL 不支持 SSL 3。
-
我也是这么想的。花了很长时间寻找更改节点 SSL 版本的方法,但没有运气。感谢您的帮助:)