如何通过Chrome中的HTTPS环境进行HTTP调用

时间:2016-09-11 09:59:47

标签: javascript java ajax http https

我正在尝试使用我们的应用程序(HTTPS)对远程定位的Web服务(HTTP)进行ajax调用。 但我得到了以下错误。

Mixed Content: The page at 'https://test.tes.com/url' was loaded over HTTPS, but requested an insecure script 'http://129.211.25.5:8063/'. This request has been blocked; the content must be served over HTTPS

我正在使用Chrome浏览器。

我试图寻找解决方案,但我写的大部分地方都认为不安全的内容不允许使用chrome。在Internet Explorer中它会提示,如果我们允许混合内容,那么我就可以调用HTTP webservice。

还发现解决方案是将HTTP替换为HTTPS调用。但我的服务器未配置为HTTPS(未启用SSL),因此我无法进行更改。

我的问题是 是否可以从HTTP环境进行HTTP调用? Atlest我们可以绕过一些HTTP调用,以便可以避免上述错误吗?(过滤器或可以提供帮助的东西) 或者是否必须迁移到HTTPS环境?

2 个答案:

答案 0 :(得分:1)

你有两个解决方案:

  • 说服网络服务允许https(不,https->重定向不是解决方案)

  • 对您的服务器进行https调用,然后配置您的服务器以在后端发出http请求:

  

用户< -https->你的服务器< -http->网络服务

答案 1 :(得分:-3)

这是您的问题(如果您使用的是htaccess文件):

RewriteCond %{SERVER_PORT} ^443$ RewriteRule (.*) http://www.example.com/$1

您不允许SSL请求(443端口号用于HTTPS请求)。尝试删除这些行。

可替换地,

如果可能,请使用该外部网页/网络服务器的https版本。