3 回答

TA貢獻1877條經驗 獲得超1個贊
在您的請求選項中,請嘗試包含以下內容:
var req = https.request({
host: '192.168.1.1',
port: 443,
path: '/',
method: 'GET',
rejectUnauthorized: false,
requestCert: true,
agent: false
},

TA貢獻1777條經驗 獲得超3個贊
不要相信所有試圖誤導你的人。
在您的請求中,只需添加:
ca: [fs.readFileSync([certificate path], {encoding: 'utf-8'})]
如果您打開未經授權的證書,您將完全不受保護(因為沒有驗證身份而暴露給MITM),并且在沒有SSL的情況下工作不會有太大的區別。解決方案是指定您期望的CA證書,如下一個代碼段所示。確保證書的公用名與您在請求中調用的地址相同(如主機中指定的):
你將得到的是:
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
},
請閱讀這篇文章(披露:本答案作者撰寫的博客文章),以便了解:
CA證書的工作原理
如何生成CA Certs以便輕松進行測試以模擬生產環境
添加回答
舉報