2014-09-12 100 views
0

我需要发送信息到以HTTPS为特征的其他域。如果我通过普通的HTTP发送它,会出现以下浏览器警告消息,这可能会引起可怕的用户:如何将HTTPS表单提交给HTTPS服务器

“虽然此页面已加密,但您输入的信息将通过未加密的连接发送,并且很容易通过第三方。您确定要继续发送此信息吗?“

我该如何解决这个问题?

我无法将所有站点更改为HTTPS,是否可以仅使用HTTPS提交POST表单?

我可以通过Javascript/Jquery吗? (如果是的话,有一个例子吗?)

谢谢

回答

1

的警告只是说,从非HTTPS网站提交信息与HTTPS,反之亦然网站,公开这些信息给潜在攻击者。

如果您的表单所在的页面正在使用HTTP,请将其更改为HTTPS。如果您的表单所在的页面使用的是HTTPS,并且它所提交的URL是HTTP,那么您必须将其提交给HTTPS的页面更改。如果接收站点不支持HTTPS,则无法避免此警告,除非您从非HTTPS页面提交该警告。如果信息很敏感,那不是一个好主意。

要更改远程站点以使用HTTPS,只需更改您的AJAX请求的URL中的协议即可。

0

也许这个代码将这样的伎俩:

$("form").each(function (index, form) { 
    form.action = form.action.replace("http://", "https://"); 
}); 

但它是可能的警告不会消失。您可以使用文本编辑器搜索/替换您的文件中找到的所有action="http://action="https://

希望它有帮助。祝你好运。