【问题标题】:Cross domain access issue with http://whateverorigin.org/http://whateverorigin.org/ 的跨域访问问题
【发布时间】:2014-01-23 18:34:54
【问题描述】:

您好,我使用 http://whateverorigin.org/ 来源从其他域获取内容并将其显示在我的域上。

问题是我的页面使用https://,但(http://whateverorigin.org/)仅支持http://

如果我将 url 更改为 https://whateverorigin.org/,iFrame 将永远不会加载内容。

那么我该如何克服这个问题,非常感谢任何建议。

代码:

var url = 'https://www.otherdomain.com/001003227.htm';
$.getJSON('https://whateverorigin.org/get?url=' + 
           encodeURIComponent(url) + '&callback=?', function(data){

【问题讨论】:

  • @user2813355:您在控制台中遇到的确切错误是什么??
  • 我在控制台中没有收到任何错误,但在浏览器中我看到 Loading... 并没有加载任何内容。

标签: javascript jquery https jsonp cross-domain-policy


【解决方案1】:

不要这样做。 HTTPS 页面中的 Http 内容本质上是不安全的。观点。这就是 IE 显示警告的原因。摆脱警告是一种愚蠢的废话。

相反,HTTPS 页面应该只包含 HTTPS 内容。确保内容也可以通过 HTTPS 加载,如果页面是通过 https 加载的,则通过 https 引用它。对于外部内容,这意味着在本地加载和缓存元素,以便它们可以通过 https 访问——当然。可悲的是,没有办法解决。

【讨论】:

    【解决方案2】:

    根据issue on GitHub,您可以执行以下操作:

    如果需要 HTTPS,我建议使用以下路径:

    https://whateverorigin.herokuapp.com/get?url=...

    由于证书的设置方式,尝试使用 HTTPS 访问主页将无法正常工作。

    我已经在自己的网站上对此进行了测试,并且可以正常工作。

    【讨论】:

      猜你喜欢
      • 2011-07-25
      • 2013-09-30
      • 2017-08-29
      • 2014-09-28
      • 2013-03-05
      • 1970-01-01
      • 1970-01-01
      • 2015-09-28
      相关资源
      最近更新 更多