如何显示来自其他站点的JSON数据

时间:2018-01-22 11:08:52

标签: javascript php html json

我有一个页面,其中存储了一些像这样的

的JSON数据
{
    "video": {
        "user": {
            "first_name": "Curtis",
            "last_name": "Shoch"
        },
        "name": "Darwin Digital",
        "location": "Kennesaw",
        "video_type": "c",
        "created": "2018-01-16T13:11:11.326636Z"
    }
}

我需要获取这些数据并将其显示在另一页上,o我试图做这样的事情

var getJSON = function(url, callback) {
    var xhr = new XMLHttpRequest();
    xhr.open('get', url, true);
    xhr.responseType = 'json';
    xhr.onload = function() {
      var status = xhr.status;
      if (status == 200) {
        callback(null, xhr.response);
      } else {
        callback(status);
      }
    };
    xhr.send();
};
getJSON('https://dev.truthify.com/api/deeplink/info/bf76b0bd-5210-4c55-af23-c9689ffec536/', function(err, data) {
  if (err != null) {
    alert('Something went wrong: ' + err);
  } else {
    result.innerText = video.name;
  }

但我收到了一条消息

  

No Access-Control-Allow-Origin

标头出现在请求的资源上,因为我正在使用来自其他网站的源并且它被阻止。那么有没有什么可以绕过这个,或采取其他方式来获取这些数据。

1 个答案:

答案 0 :(得分:0)

您正在获取和json并尝试将其发送到另一个源域中的另一个URL。 为了访问不同源域上的服务器,您必须发出cors请求(跨源资源共享)。 这意味着你必须设置一个" Access-Control-Allow-Origin"标头,以便您的客户端代理获得服务器的权限。