gpt4 book ai didi

javascript - 如何忽略 XmlHttpRequest 中的自签名证书

转载 作者:行者123 更新时间:2023-12-01 15:04:25 26 4
gpt4 key购买 nike

我正在开发一个用 javascript 编写的项目。我可以看到,对于请求,已经创建了 XMLHttpRequest 对象。

它对“http”请求工作正常,但对“https”失败。由于我是在开发环境中调试的,所以我只想知道如何忽略 XmlHttpRequest 中的自签名证书对象?

搜索时发现this ,

httpreq = new ActiveXObject("Msxml2.ServerXMLHTTP.3.0");
httpreq.setOption(2, 13056);

但答案不适用于 Microsoft edge、chorme 等现代浏览器......

我还找到了 this ,并且它清楚地表明 setOption() 可用于忽略 ssl 证书。

我可以在我的代码中看到的一个区别是我使用以下命令创建 httpreq:
httpreq = new xmlhttprequest();//This is for chorme and Firefox

那么有什么方法可以忽略 XmlHttpRequest 中的自签名证书?

最佳答案

坏消息:
XmlHttpRequest 无法做到这一点直接 .这是合乎逻辑的,因为 SSL 需要在 Web 上保持安全,因为任何禁用它的能力都会带来重大的安全风险。
你也是对的setOption不是 XmlHttpRequest 下的标准/现代方法。
好消息:
你是什​​么可以要做的是通过受信任/正确配置的代理来完成此操作,下面的示例作为节点/Express 服务器配置为允许不安全的 SSL 连接:

$router.get("/", (oRequest, oResponse) => {
$nonStrictSSLRequest = require('request').defaults({strictSSL: false});

$nonStrictSSLRequest(
{ url: "https://192.168.1.2:8080/api/apiVer" },
function (err, oAPIResponse, sBody) {
oResponse.status(200).json(JSON.parse(sBody));
}
);
});
我必须这样做才能支持 RainMachine's (stupid HTTPS only) self signed certificates .

关于javascript - 如何忽略 XmlHttpRequest 中的自签名证书,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48685016/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com