2

我正在尝试将 AJAX 请求发送到使用自签名证书的 REST API 网站。问题是当我第一次访问该网站时,它抱怨这个证书问题。当我执行 AJAX 请求(不先接受此证书)时,它会静默失败。

问题是在这种情况下该怎么办?我应该要求用户去这个网站并接受这个证书吗?有没有办法以优雅的方式做到这一点?我知道该证书应该首先签名,但我无权访问该网站。使用 http 不是一种选择。

4

2 回答 2

2

我曾多次遇到同样的问题。我能想到的最好的办法是这样的:检查 cookie,如果他们有,什么也不做,如果他们没有,发出重定向到生成证书警告的站点,用户接受自我-签名证书,然后用户只需要返回您的站点。如果您对 api 方面有任何控制权,您可能会做到这一点,以便您拥有一个反弹 url 或最终让用户回到您的网站的东西。除了获得真正的 SSL 证书之外,真的没有优雅的方法来处理这个问题。在另一个站点上,出于这个原因,我们最终不得不在我们的页面上放置一个指向该服务的链接,幸运的是这是暂时的,因为我们也可以控制服务器端,并计划用真实的证书替换自签名证书.

于 2013-08-30T23:20:35.983 回答
0

这是安全工作。就处理用户应该做的事情而言,它可能做得不好,但您确实应该使用有效的 CA 签署您的证书。

于 2014-04-22T22:20:27.363 回答