无法打开https,尤其是phantomjs中的salesforce站点

时间:2013-11-02 02:52:56

标签: javascript https phantomjs

我刚刚开始学习无头测试,并希望用它来测试我在salesforce.com上的应用程序。 Salesforce是一个https站点,无法在phantomjs中打开它。我正在使用loadspeed example来测试它。我还设置了--ignore-ssl-errors参数,但仍然出现FAIL to load address错误。

phantomjs "C:\myfolder\phantomjs
-1.9.2-windows\examples\loadspeed.js" https://test.salesforce.com --ignore-ssl-e
rrors=yes --ssl-protocol=any

另一项观察:

如果我尝试使用其他https网站https://github.com/,我可以在phantomjs中打开它们。

请帮助解决这个问题。

1 个答案:

答案 0 :(得分:4)

你以错误的方式使用phantomjs命令。您应该按照以下顺序使用:

phantomjs [switchs] [options] [script] [argument]

在你的例子中应该是:

phantomjs --ignore-ssl-errors=yes --ssl-protocol=any "C:\myfolder\phantomjs -1.9.2-windows\examples\loadspeed.js" https://test.salesforce.com

另一种可能性是您尝试打开一个URL,该URL由登录页面保护,供已登录的用户使用,因此服务器可能会返回403未经授权的响应。如果是这种情况,您可以通过在浏览器上获取demo.saleforce.com上的所有cookie并在phantomjs上设置它们来解决这个问题。


  
    

请注意,Salesforce的SSL证书没有问题,关闭SSL安全性是没有意义的。如果您无法在不忽略SSL错误的情况下访问该站点,那么您的计算机/互联网连接很可能已被某些黑客入侵。如果是这种情况,他们可以在您登录不同的网站时拦截您的登录信息。