加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ajax – 如何在服务器上启用跨域请求?

发布时间:2020-12-16 03:09:17 所属栏目:百科 来源:网络整理
导读:我有一个json文件托管在我的服务器上。当我尝试向json文件发出Ajax“GET”请求时,它失败。 看到Safari中的控制台,它说“无法加载资源”。 Firebug显示“200 OK”,但响应不显示。即使Firebug也没有显示JSON选项卡。 我相信这是因为跨域请求不允许使用AJAX
我有一个json文件托管在我的服务器上。当我尝试向json文件发出Ajax“GET”请求时,它失败。

看到Safari中的控制台,它说“无法加载资源”。

Firebug显示“200 OK”,但响应不显示。即使Firebug也没有显示JSON选项卡。

我相信这是因为跨域请求不允许使用AJAX。

我想知道如何克服这个问题?另外,如果我想在我的服务器上启用跨域请求,我相信一个crossdomain.xml文件或者需要创建的东西。我不知道,但这是我所知道的。我在Google上搜索,但找不到任何相关链接。

任何帮助在这是非常感谢。

谢谢。

更新:
我没有使用任何服务器端脚本语言(PHP,ASP.NET等)。我正在使用纯HTML和JavaScript / jQuery。

更新2:

我使用以下代码进行跨域请求:

<script src="jquery-1.6.2.js"></script>
  <script>
  $(document).ready(function () {
    $.ajax({
      dataType: 'jsonp',data: '',jsonp: 'jsonp_callback',url: 'http://myhosting.net/myjsonfile.json',success: function (jsonData) {
        alert("success")
        alert(jsonData);
      },error: function(errorObj) {
        alert(errorObj.statusText);

      },});
});

当我在Firebug的“Net”选项卡中看到一个JSON选项卡时,我可以看到json响应。但是,“成功”回调处理程序不会被调用,但是“错误”回调处理程序被调用,并且我得到parseerror的警报。

任何想法可能是错的?

Access-Control-Allow-Origin: http://yourdomain-you-are-connecting-from.com

在目标服务器上

在php:

header("Access-Control-Allow-Origin: http://yourdomain-you-are-connecting-from.com");

以防您不想使用服务器脚本语言:将其放在(linux)控制台中

a2enmod headers

并添加到.htaccess文件

Header set Access-Control-Allow-Origin: http://yourdomain-you-are-connecting-from.com

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读