坑爹
沒想過瀏覽器兼容的問題。
為系統安裝用戶證書后, firefox一直無法連接
提示
連接 www.httpsserver.com:8985 時發生錯誤。 SSL 對等端無法協商出一個可接受的安全參數設置。 (錯誤碼: ssl_error_handshake_failure_alert)
您嘗試查看的頁面無法顯示,因為已收到數據的可靠性無法證實。
請聯系網站的所有者,告知他們這個問題。
我一直找不到問題在哪里。
寫代碼導入證書,OK可以訪問
var options = { hostname:'www.httpsserver.com', port:8985, path:'/', method:'GET', // key:fs.readFileSync('client.key'), // cert:fs.readFileSync('client.crt'), // ca: [fs.readFileSync('ca.crt')], pfx:fs.readFileSync('client.pfx'), passphrase:"1CUI" }; options.agent = new https.Agent(options); var req = https.request(options,function(res){ console.log("statusCode: ", res.statusCode); console.log("headers: ", res.headers); res.setEncoding('utf-8'); res.on('data',function(d){ console.log(d); }) }); req.end(); req.on('error',function(e){ console.log(e); })
可以訪問成功。
但把證書安裝到系統,在firefox訪問,卻不行。
百思不得其解。
然后用chorme ,成功了。
原來firefox有自已的證書和信任管理模塊。裝到系統里不生效,必須手動導入到firefox里!!!!!!