尝试从HTTPS网站从HTTP服务器检索JSONP

时间:2017-09-16 19:47:01

标签: javascript jquery json https getjson

我有一个基于HTTPS的网站,我有一个JS代码,可以从基于HTTP的网站获取数据。我收到HTTP服务器不受信任的错误。 虽然相同的代码适用于HTTP到HTTP。但不是HTTP到HTTPS。 这是错误:

  

混合内容:' https://www.33k.com/player/playerudan.php'是通过HTTPS加载的,但请求了一个不安全的脚本' http://33k.thepuremix.net/json.xsl'。此请求已被阻止;内容必须通过HTTPS提供。

为了获取这些数据,我使用类似下面的代码:

var URL = "http://33k.thepuremix.net/json.xsl"
$.getJSON( URL, function( data) {
 console.log( data );
});

任何想法如何解决或使其工作。在Icecast上是否有这样的Crossdomain.xml,我可以给它配置或其他任何东西来修复它?

更新: 以上链接是两个不同的网站。这不是一个子领域问题。这些链接看起来很像。域A(HTTPS)希望从域B(HTTP)获取JSON。

1 个答案:

答案 0 :(得分:1)

从HTTPS调用HTTP被设计阻止为注释(同源策略)中提到的@RoryMcCrossan,您可以将脚本从HTTP移动到HTTPS或制作后端脚本(例如在PHP中)并从中调用HTTP像:

JavaScript(HTTPS) -> PHP(HTTPS) -> PHP(HTTP)
JavaScript(HTTPS) <- PHP(HTTPS) <- PHP(HTTP)

参考在PHP中创建http请求:Http Request in PHP

此处还提供了有关Same Origin Policy

的一些信息
相关问题