向端点发送请求时出现SSLv3错误

时间:2015-08-03 15:28:30

标签: javascript node.js ssl

我正在尝试从端点请求数据但是我当前收到以下错误。任何想法如何解决。

请求:错误:写入EPROTO 140735243141888:错误:140943F2:SSL例程:SSL3_READ_BYTES:sslv3警告意外消息:../ deps / openssl / openssl / ssl / s3_pkt.c:1289:SSL警报号10

var cert = '{location to my certificate}'
var key = '{location to my key}'

var fs = require('fs')
    , request = require('request');

function authCallback (error, response, body) {
  if (!error && response.statusCode == 200) {
  console.log(response.headers);
  } else {
  console.error("REQUEST: "+error)
 };
}

var options = {
url: 'https://some.endpoint.co.uk',
agentOptions: {
    cert: fs.readFileSync(cert),
    key: fs.readFileSync(key),
    securityOptions: 'SSL_OP_NO_SSLv3'
 }
}

request.get(options, authCallback);

非常感谢

2 个答案:

答案 0 :(得分:0)

如果您正在使用节点8,请尝试添加以下行:

require("tls").DEFAULT_ECDH_CURVE = "auto"

答案 1 :(得分:0)

我正在使用npm urllib并注释掉以下行,然后问题得以解决。

options.secureOptions = require('constants').SSL_OP_NO_TLSv1_2;