3

我正在尝试使用我的 shopify 网上商店中的 instagram API。我正在使用 JavaScript。当我使用 jQuery 时,instagram 不会传回正确的标题。

这是我的代码(调用已验证):

jQuery

$.getJSON( call, function( data ) {
  alert("sdfewsf");
}).error(function(jqXHR, textStatus, errorThrown) {
  console.log("error " + textStatus);
  console.log("incoming Text " + jqXHR.responseText);
});

这是我收到的错误:

XMLHttpRequest 无法加载https://api.instagram.com/v1/tags/%7Btag-name%7D/media/recent?client_id=95d4426edafc476d9b76a5dacc4c12ca。请求的资源上不存在“Access-Control-Allow-Origin”标头。因此,不允许访问来源“ http://www.99centrazor.com ”。响应具有 HTTP 状态代码 404。

我也尝试过 instafeed.js,但它不起作用。

Instafeed.js

 var feed = new Instafeed({
  get: 'tagged',
  tagName: 'awesome',
  clientId: clientId
});
feed.run();

这将返回一个对象,但运行功能不起作用——

未捕获的类型错误:无法读取 null 的属性“appendChild”

有谁知道让这个东西工作的方法?!?!谢谢!

4

2 回答 2

2

关于instafeed.js,我将缩小对您的第二个问题的回答。

您看到的错误是由 instafeed.js 在页面上找不到其目标元素引起的。

要解决此问题,请确保您已放入<div id="instafeed"></div>页面,并且在页面完全加载后加载 instafeed.js:

$(document).ready(function() {
  var feed = new Instafeed({
    get: 'tagged',
    tagName: 'awesome',
    clientId: clientId
  });
  feed.run();
});
于 2015-10-24T16:33:01.683 回答
0

$.getJSON()不能作为

浏览器会倾向于阻止跨域 HTTP GET 请求

. 您可以使用 JSONP 作为解决方法。

Instagram API 支持JSONP 端点/URL,例如:

https://api.instagram.com/v1/tags/coffee/media/recent?access_token=ACCESS-TOKEN&callback=callbackFunction

如果您不熟悉 JSONP,可以在此处查看示例

于 2015-10-22T18:14:06.070 回答