是否可以从HTTPS向HTTP发出JSONP请求?

我知道有一个几乎重复的问题,但答案根本不令人满意。

我需要使用在HTTP上运行的Openstreetmap服务进行地理编码。

我的网站通过HTTPS运行。

似乎不可能从https到http进行JSONP请求,浏览器(Chrome)抱怨不安全的内容。

有解决方案?

浏览器抱怨内容不安全的原因是内容不安全。 具有安全页面的整个目的是所有这些都是安全的,并且可以信任。

您可以在安全站点中设置请求不安全内容的代理页面。 在那里你应该在发送到浏览器之前validation内容,这样它实际上是安全的,而不仅仅是假装是安全的。

如果您希望向在HTTP下运行的外部服务发出POST请求,而初始请求来自HTTPS,则始终将其视为不安全。 据我所知,没有办法绕过它。

您可以做的是POST到您的后端,它向在HTTP下运行的服务发送另一个POST请求。 从那里只返回HTTP服务返回的值。

对于它可能关心的人,这就是我自己解决的问题。

1)我的Javascript代码使用我需要转发到服务的参数调用服务器上的AJAX页面

2)AJAX页面使用地址通过CURL发出请求

3)我清理响应并将其转换为JSON

4)使用Javascript的回调成功我使用数据