我一直在尝试从一个通过https接口连接的设备中获取信息,但由于其具有无效的安全证书而遇到了麻烦。我知道该设备是可信的,但我无法访问服务器端,因此无法更改它。我想知道是否有办法在JavaScript中设置XMLHttpRequest对象,使其忽略无效的SSL证书并继续获取信息。目前,似乎只会拒绝证书并停止。谢谢。
我一直在尝试从一个通过https接口连接的设备中获取信息,但由于其具有无效的安全证书而遇到了麻烦。我知道该设备是可信的,但我无法访问服务器端,因此无法更改它。我想知道是否有办法在JavaScript中设置XMLHttpRequest对象,使其忽略无效的SSL证书并继续获取信息。目前,似乎只会拒绝证书并停止。谢谢。
我之前找到了这个解决方案,但它没有起作用,因为我仍在使用实际的XMLHttpRequest。当使用以下语句创建它时:
httpreq = new ActiveXObject("Msxml2.ServerXMLHTTP.3.0");
httpreq.setOption(2, 13056);
有了这些参数,请求现在会忽略无效的证书并获取信息。如果我理解正确,这将无法与任何非 Microsoft 技术尝试运行脚本的情况下工作,但对于我的项目范围来说,这没问题。
不,没有。XMLHTTPRequest不允许您覆盖它。在您的情况下能够覆盖SSL安全性可能是有意义的,但是如果您仔细想想,这通常是一个坏主意。您永远不希望允许互联网上的任意JavaScript代码连接到浏览器知道存在潜在中间人攻击问题的被认为是安全的服务。
我知道这个设备是可信的
但你不知道你是否真正连接到了这个设备。
这就是证书的目的。这就是为什么它必须有效。