【问题标题】:Cross domain scripting error?跨域脚本错误?
【发布时间】:2010-11-06 07:25:23
【问题描述】:

我正在使用以下代码从 yahoo Finance 获取股票价格

<script type="text/javascript">
$(function() {
    $("#quote").load("http://finance.yahoo.com/q?s=utg #yfs_l10_utg").text();
});
</script>

我收到以下错误:-

Security Error: Content at file:[file url] may not load data from http://finance.yahoo.com/q?s=utg.

Error: [Exception... "Access to restricted URI denied"  code: "1012" nsresult: "0x805303f4 (NS_ERROR_DOM_BAD_URI)"  location: "[file url]"]

源文件:[url]

有人对我如何解决这个问题有任何想法吗?

【问题讨论】:

    标签: jquery


    【解决方案1】:

    JavaScript 安全模型不允许您加载域外内容。在 jQuery .getJSON 文档上有一个很好的解释和一些解决方法: http://docs.jquery.com/Ajax/jQuery.getJSON#urldatacallback

    【讨论】:

      【解决方案2】:

      请参阅this,其中详细介绍了如何使用 YQL 从 yahoo 服务获取 jsonp 结果

      【讨论】:

        【解决方案3】:

        我知道这对您的情况没有帮助,但将其放在这里以供将来偶然发现此问题的用户使用。

        如果您可以访问您调用的目标 URL 服务,在 PHP 中您可以添加以下代码 sn-p 以避免此错误。

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

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2012-12-19
          • 2012-02-26
          • 2021-08-08
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-03-06
          • 2012-08-18
          相关资源
          最近更新 更多