如何使用 jQuery 获取跨域数据?得到错误[重复]

Posted

技术标签:

【中文标题】如何使用 jQuery 获取跨域数据?得到错误[重复]【英文标题】:How to get the cross domain data with jQuery ? getting Error [duplicate] 【发布时间】:2015-12-11 08:28:04 【问题描述】:

我正在使用 jQuery 获取跨域数据,但出现此错误

语法错误:缺失;声明之前 这是我的代码

<script>
     (function($) 
     var url = '//heald-chiampa.tributes.com/funeral_homes/search?json=1';
     $.ajax(
            type: 'GET',
        url: url,
        async: false,
        contentType: "application/json",
        dataType: 'json',
                success: function(json) 
       alert(json);
     ,
     error: function(e) 
       console.log(e.message);
     

     );
    )(jQuery);
</script>

当我将数据类型从 jsonp 更改为 json 时,我收到此错误 跨域请求被阻止:同源策略不允许读取位于http://heald-chiampa.tributes.com/funeral_homes/search?json=1 的远程资源。 (原因:CORS 标头“Access-Control-Allow-Origin”缺失)。

【问题讨论】:

【参考方案1】:

他的简单答案是您不能从 jquery 访问另一个域服务。了解 CORS here

【讨论】:

【参考方案2】:

获取请求的服务器应该输出这个头:

Access-Control-Allow-Origin: http://www.yourdomain.com

【讨论】:

以上是关于如何使用 jQuery 获取跨域数据?得到错误[重复]的主要内容,如果未能解决你的问题,请参考以下文章

如何访问托管在其他域的 Rest API 数据。跨域问题

由于跨域请求,带有 Jquery 文件上传的 Carrierwave_Direct 不会重定向

使用jquery的ajax的jsonp类型跨域请求数据、始终获取不到返回数据呢

如何使用 jQuery AJAX 加载跨域 html 页面?

如何使用jQuery AJAX加载跨域html页面?

如何使用jquery通过.load通过跨域获取HTML元素的值