javascript - 无法通过ajax调用 "No ' Access-Control-Allow-Origin'"从数据库获取数据

标签 javascript php jquery ajax

我正在尝试执行 ajax GET 调用以从我的数据库中获取一些信息。离线(通过本地主机)一切正常。在网上我一遍又一遍地遇到同样的错误:

“请求的资源上不存在‘Access-Control-Allow-Origin’ header 。” 正如您在以下链接中看到的:http://d.pr/i/pHR4

JavaScript 代码:

    function loadnewsong(){

    var url = "http://www.sonder.be/?nextsong=true&id=" + $('#musicid').text();

    $.ajax({
        type:"GET",
        url: url,
        dataType:"json",
        success: function(data){
            console.log(data);

            $('#title').fadeOut(function(){

            $('#title').text(data[0].title);
                $('#title').fadeIn();
            });

            $('#musicid').text(data[0].id);

            audio.pause();
            $('#srcmp3').attr('src',"assets/media/" + data[0].mp3);
            $('#srcogg').attr('src',"assets/media/" + data[0].ogg);
            audio.load();
            audio.play();

            url = "http://www.sonder.be/?nextsong=true&id=" + $('#musicid').text();

        }
    });
}

我可能做错了什么?

最佳答案

sonder.be 要求浏览器从 www.sonder.be 获取数据,而 www.sonder.be 没有提供它有权与 sonder.be 共享该数据。

由于这些可能是指向同一站点的不同主机名,因此您可以使用简单的方法来解决此问题:

  1. 选择两个主机名之一作为规范主机名,并对另一个主机名上的所有资源发出 301 重定向。
  2. 使用相对 URI。

进一步阅读:

关于javascript - 无法通过ajax调用 "No ' Access-Control-Allow-Origin'"从数据库获取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20957673/

相关文章:

javascript - 如何设置代码块的样式以使所有颜色看起来都像我的 IDE 和 stackoverflow 中的此处?

php - yii2 Controller Action 注入(inject)是如何工作的

php - 无法使用准备好的对象语句从 mysql 获取多行数据

php - Mysql JOIN 表带有首选项和 GROUP BY

javascript - 带暂停的jquery自动滚动网站

jquery - 拖放在缩放容器时无法正常工作

javascript - 在同一页面登录,检查SESSION,无需重新加载

javascript - 在nodejs中从post请求发送数据到get请求

javascript - window.location 的使用在 iPad 上不起作用

jquery - 使用 jQuery 添加/删除基于屏幕分辨率的无序列表