Javascript XMLHttpRequest:忽略无效的SSL证书

use*_*617 12 javascript networking xmlhttprequest ssl-certificate windows-desktop-gadgets

所以我一直无法从与https接口的设备中获取信息,因为它的安全证书无效.我知道该设备是值得信任的,我无法访问服务器端,所以我无法更改它.我想知道是否有任何方法可以在Javascript中设置XMLHttpRequest对象来忽略无效的SSL证书,并且无论如何都只是获取信息.因为它现在似乎只是拒绝证书并停止.谢谢.

use*_*617 7

好吧,我之前找到了这个解决方案,但它没有用,这是因为我仍在使用实际的XMLHttpRequest.使用此语句创建时:

httpreq = new ActiveXObject("Msxml2.ServerXMLHTTP.3.0");
Run Code Online (Sandbox Code Playgroud)

有一个名为setOption的方法,可以打开使用:

httpreq.setOption(2, 13056);
Run Code Online (Sandbox Code Playgroud)

使用这些参数,请求现在忽略无效证书并始终获取信息.如果我理解正确,这将不适用于任何试图运行脚本的非Microsoft技术,但这对我的项目范围是可行的.


Con*_*tah 5

不,没有。XMLHTTPRequest 不允许您覆盖它。能够覆盖 SSL 安全性在您的情况下可能是有意义的,但如果您考虑一下,一般来说这将是一个坏主意。您永远不会希望互联网上的任意 javascript 代码连接到 js 主机(浏览器)知道可能存在 MITM 问题的所谓安全服务。


use*_*421 5

我知道该设备值得信赖

是的,但您不知道您是否已真正连接到设备。

就是证书的目的。这就是为什么它必须有效。