【问题标题】:Phonegap - Origin http://localhost is not allowed by Access-Control-Allow-OriginPhonegap - Access-Control-Allow-Origin 不允许来源 http://localhost
【发布时间】:2013-11-05 20:17:37
【问题描述】:

我正在使用 Phonegap 和 Backbone.js 创建一个移动应用程序。我的应用程序点击了一个 url,它以 xml 格式返回一个 rss 提要,这将被加载到 Backbone 连接中。但是我得到了错误:

Origin http://localhost is not allowed by Access-Control-Allow-Origin. 

在我的 res/xml/config.xml 中有一行:

<access origin="*"/>

http://docs.phonegap.com/en/1.9.0/guide_whitelist_index.md.html 的 phonegap 文档指出,这应该会阻止此类错误,但事实并非如此。

我正在桌面浏览器上从本地主机进行测试。会不会是这个问题?

【问题讨论】:

    标签: ajax backbone.js cordova cross-domain


    【解决方案1】:

    将他放在您提出请求的 PHP 文件的顶部:

    header('Access-Control-Allow-Origin: *');

    我认为你使用 php :)

    如果现在请说出哪种语言:)

    【讨论】:

    • 不幸的是我无法访问服务器。虽然它是一个 Joomla 网站。根据这里的答案:stackoverflow.com/questions/13920782/…,我应该不需要触摸服务器...
    • 如果你从你的浏览器得到这个: XMLHttpRequest cannot load Origin null is not allowed by Access-Control-Allow-Origin... 那么你需要 100% 完全输入该代码。
    • 或...更改您的页面和 PHP 脚本以支持“JSONP”
    • 您尝试访问的资源与下载脚本的页面不在同一个域中,导致“跨域”安全错误。
    • Phonegap 也有一个白名单,但这与服务器有任何关系:)
    【解决方案2】:

    我在浏览器中测试,res/xml/config.xml 中的白名单只适用于移动设备。

    【讨论】:

      猜你喜欢
      • 2013-04-09
      • 2012-09-22
      • 1970-01-01
      • 1970-01-01
      • 2014-07-14
      • 2012-12-28
      • 2013-07-20
      • 2012-11-04
      相关资源
      最近更新 更多