第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

使用https.request忽略node.js中無(wú)效的自簽名ssl證書(shū)?

使用https.request忽略node.js中無(wú)效的自簽名ssl證書(shū)?

呼如林 2019-08-30 14:20:08
我正在開(kāi)發(fā)一個(gè)登錄我本地?zé)o線(xiàn)路由器(Linksys)的小應(yīng)用程序,但我遇到了路由器的自簽名證書(shū)問(wèn)題。我運(yùn)行wget 192.168.1.1并得到:ERROR: cannot verify 192.168.1.1's certificate, issued by `/C=US/ST=California/L=Irvine/O=Cisco-Linksys, LLC/OU=Division/CN=Linksys/emailAddress=support@linksys.com':Self-signed certificate encountered.ERROR: certificate common name `Linksys' doesn't match requested host name `192.168.1.1'.To connect to 192.168.1.1 insecurely, use `--no-check-certificate'.在節(jié)點(diǎn)中,捕獲的錯(cuò)誤是:{ [Error: socket hang up] code: 'ECONNRESET' }我目前的示例代碼是:var req = https.request({     host: '192.168.1.1',     port: 443,    path: '/',    method: 'GET'}, function(res){    var body = [];    res.on('data', function(data){        body.push(data);    });    res.on('end', function(){        console.log( body.join('') );    });});req.end();req.on('error', function(err){    console.log(err);});我怎樣才能讓node.js做相當(dāng)于“--no-check-certificate”的操作?
查看完整描述

3 回答

?
冉冉說(shuō)

TA貢獻(xiàn)1877條經(jīng)驗(yàn) 獲得超1個(gè)贊

在您的請(qǐng)求選項(xiàng)中,請(qǐng)嘗試包含以下內(nèi)容:


   var req = https.request({ 

      host: '192.168.1.1', 

      port: 443,

      path: '/',

      method: 'GET',

      rejectUnauthorized: false,

      requestCert: true,

      agent: false

    },


查看完整回答
反對(duì) 回復(fù) 2019-08-30
?
慕森王

TA貢獻(xiàn)1777條經(jīng)驗(yàn) 獲得超3個(gè)贊

不要相信所有試圖誤導(dǎo)你的人。


在您的請(qǐng)求中,只需添加:


ca: [fs.readFileSync([certificate path], {encoding: 'utf-8'})]

如果您打開(kāi)未經(jīng)授權(quán)的證書(shū),您將完全不受保護(hù)(因?yàn)闆](méi)有驗(yàn)證身份而暴露給MITM),并且在沒(méi)有SSL的情況下工作不會(huì)有太大的區(qū)別。解決方案是指定您期望的CA證書(shū),如下一個(gè)代碼段所示。確保證書(shū)的公用名與您在請(qǐng)求中調(diào)用的地址相同(如主機(jī)中指定的):


你將得到的是:


var req = https.request({ 

      host: '192.168.1.1', 

      port: 443,

      path: '/',

      ca: [fs.readFileSync([certificate path], {encoding: 'utf-8'})],

      method: 'GET',

      rejectUnauthorized: true,

      requestCert: true,

      agent: false

    },

請(qǐng)閱讀這篇文章(披露:本答案作者撰寫(xiě)的博客文章),以便了解:


CA證書(shū)的工作原理

如何生成CA Certs以便輕松進(jìn)行測(cè)試以模擬生產(chǎn)環(huán)境


查看完整回答
反對(duì) 回復(fù) 2019-08-30
  • 3 回答
  • 0 關(guān)注
  • 2815 瀏覽
慕課專(zhuān)欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)