1

目前,我正在尝试使用 instagram 的 api 创建一个页面,显示带有特定标签的最近图片,以及发布它的用户和发布日期。我还尝试拥有无限加载功能,当页面到达底部时,ajax 会加载到更多的 Instagram 帖子中。

继承人链接到现场网站http://www.laithazzam.com/work/nukes/indexnew.php

单击红色是将跳过视频,并直接进入 Instagram 提要。

我目前正在使用 Christian Metz 在这里找到的解决方案,https://gist.github.com/cosenary/2961185

我在发布日期、第一次初始加载以及 ajax 加载时也遇到了问题。在尝试实现 Christian 的 php/ajax 解决方案之前,我以前能够使用以下代码。

var date = new Date(parseInt(data.data[i].created_time) * 1000);
<p class='date'>"+(date.getMonth()+1)+"/"+date.getDate()+"/"+date.getFullYear()+"</p>

我想我不明白的是,ajax 加载功能实际上是如何运作的。我还将如何通过 ajax 加载成功功能提取名称和日期?

$.ajax({
      type: 'GET',
      url: 'ajax.php',
      data: {
        tag: tag,
        max_id: maxid
      },
      dataType: 'json',
      cache: false,
      success: function(data) {
        // Output data
        $.each(data.images, function(i, src) {
        $("#instafeed").append('<img src="' + src + '">');
        });

        // Store new maxid
        $('#more').data('maxid', data.next_id);
      }
    });
  });
4

1 回答 1

0

处理函数的data参数success是从任何 JSON ajax.php 返回的内容中填充的,并且结构将相应地匹配。看起来该对象的 images 属性只有图像的 URL 数组,没有其他数据。

您需要更新 PHP 脚本的这一部分,以便返回的不仅仅是图像的 URL 数组,还包括从 Instagram API 检索到的其他数据。

尝试将最后一部分更新为此:

echo json_encode(array(
    'next_id' => $media->pagination->next_max_id,
    'images'  => $media->data
));

然后,您将拥有对所有媒体数据的完全访问权限,而不仅仅是 URL。

于 2013-08-05T00:49:59.197 回答