1

我试图在一个基本的无 html 页面上使用 instafeed.js javascript,只是为了测试 API。我已在 Instagram 注册并拥有我在代码中配置的 clientId 值:

<!DOCTYPE html>
<html lang="en">
<head>
 <title>Instagramify your website</title>
 <link href="css/style.css" rel='stylesheet' type='text/css' />
 <script type="text/javascript" src="js/instafeed.min.js"></script>
</head>
<body>
  <div id="wrapper">
    <h2>Instagram pics</h2>
    </div><div id="instafeed"></div>
  </div>
  <script type="text/javascript" src="js/instafeed.min.js"></script>
  <script type="text/javascript">
  $(document).ready(function(){
    var feed = new Instafeed({
      get: 'tagged',
      tagName: 'awesome',
      clientId: 'clientId'
    });
    feed.run();
  })
 </script>
</body>
</html>

我不太确定它不起作用,我使用了与其他帖子相同的示例。请帮我!我开始失去我的小头发..

谢谢!

4

2 回答 2

1

昨晚,经过片刻的灵感,我终于开始工作了。由于我在页面上看不到任何特定错误,我认为 Id 用于 Chrome 中的 Javascript 调试器。这样我就可以看到 Instagram 的返回值和错误,它是:

“未捕获的错误:来自 Instagram 的错误:提供的 access_token 无效。”

这很奇怪,因为所有的例子(包括我上面的例子)都没有提到 access_token 只是为了获取公共标签图片。无论如何,我确保获得正确的 access_token(49 个字符长,包括 2 个“.”),并使用了传递 accessToken 的代码。(我在本地测试)或目标都不需要“useHttp:true”。

我确实添加了一个模板和分辨率属性,它最终看起来像这样:

var feed = new Instafeed({
  get: 'tagged',
  tagName: 'awesome',
  clientId: 'client_id',
  accessToken: 'access_token',
  template: '<li><div><a href="{{link}}"><img src="{{image}}" /></a><h3>{{caption}}</h3></div></li>',
  resolution: 'standard_resolution'
});
feed.run();

现在它完美地工作了。Instagram 对 API 所做的所有新限制都令人讨厌。似乎您只能看到带有搜索标签的图片,如果您将用户添加到您的客户端,那么您也应该能够看到这些(我今天会试试这个)。现在回到阅读文档...

于 2016-03-09T11:51:20.743 回答
0

你需要设定一个目标:

var feed = new Instafeed({
    target: 'instafeed',
    get: 'tagged',
    tagName: 'awesome',
    clientId: 'clientId'
});
于 2016-03-08T21:12:34.847 回答