我正在使用自签名SSL证书来设置https站点并使用请求包来访问此站点上的内容。然而,该程序似乎卡住了,并没有打印网站的内容。有什么办法可以解决这个问题。使用Firefox附件访问https站点
0
A
回答
2
警告:这应该只用于调试。自动为错误的SSL证书添加覆盖会危及整个连接 - 如果你这样做,那么你可以跳过首先使用SSL。当您为其他人发布此扩展时,您应该使用有效的证书。
您可能想要手动添加证书覆盖。您可以使用nsICertOverrideService.rememberValidityOverride()
作为(chrome authority required)。唯一的问题是获取您想要添加覆盖的证书。但试图联系服务器,并呼吁nsIRecentBadCertsService.getRecentBadCert()
然后应该做的。事情是这样的:
var Request = require("request").Request;
var host = "example.com";
var port = "443";
Request({
url: "https://" + host + ":" + port + "/foo",
onComplete: function(response)
{
var status = null;
try
{
status = response.status;
} catch(e) {}
if (!status)
{
// There was a connection error, probably a bad certificate
var {Cc, Ci} = require("chrome");
var badCerts = Cc["@mozilla.org/security/recentbadcerts;1"]
.getService(Ci.nsIRecentBadCertsService);
var status = badCerts.getRecentBadCert(host + ":" + port);
if (status)
{
var overrideService = Cc["@mozilla.org/security/certoverride;1"]
.getService(Ci.nsICertOverrideService);
overrideService.rememberValidityOverride(host, port, status.serverCert,
Ci.nsICertOverrideService.ERROR_UNTRUSTED, false);
// Override added, now you should re-do the request
...
}
}
}
});
注:此代码没有经过测试,特别是我不知道是否检测连接错误将通过检查response.status
真正的工作(我的猜测是,它应该抛出,如果有是一个连接错误,但文档没有说什么)。
+0
让我试试看 – user1179510
相关问题
- 1. 为了访问HTTPS站点
- 2. 无法通过squid3访问https站点
- 3. 如何使用python-iptables阻止对HTTPS站点的访问
- 4. 使用python2.7上的urllib无法访问https站点
- 5. 使用Elastic Beanstalk的AWS SSL证书:无法访问HTTPS站点
- 6. https当Azure网站通过Firefox访问时返回SEC_ERROR_OCSP_INVALID_SIGNING_CERT
- 7. 使用Flex/AIR HTML组件访问HTTPS网站?
- 8. 当用户访问特定站点时Firefox自动重定向
- 9. 使用Selenium WebDriver访问HTTPS
- 10. 使用IP访问站点(.net)
- 11. ISP可以通过HTTPS站点访问通过iframe查看的站点吗?
- 12. 访问从Android版Firefox的DOM附加
- 13. 强制用户使用www访问网站。和https
- 14. 强制用户访问使用https://的网站
- 15. 使用sudo访问附加到文件
- 16. 使用Firefox附加SDK访问XUL元素
- 17. Sharepoint站点访问问题
- 18. Python示例访问受PKI保护的php站点(HTTPS)
- 19. 无法从PDA访问https网站
- 20. 使用Firefox附加组件(SDK)保存网站图像
- 21. 使用powershell连接到HTTPS站点
- 22. 在我的Django站点中使用HTTPS
- 23. DNN:使用HTTPS(SSL)的整个站点
- 24. 使用curl登录到https站点
- 25. PHP - 使用cURL访问HTTPS(SSL)保护的网站
- 26. 使用https从一个运行在http的网站访问CDN
- 27. 使用HTTPS(不可信证书)使用Java访问网站时出现问题
- 28. 使用HTTPS的IIS 7站点无法从外部Internet访问(可从Intranet访问)
- 29. 访问Wordpress站点的子文件夹
如果您只是在浏览器中打开它,HTTPS站点是否可以访问而没有警告? –
否显示证书不可信。 – user1179510
那么,这是问题所在。 request包将执行相同的验证。为您的网站添加一个永久性例外,它将起作用。 –