【问题标题】:Fetch users liked Instagram-images after API update 2016在 API 更新 2016 后获取用户喜欢的 Instagram 图像
【发布时间】:2016-06-03 08:21:20
【问题描述】:

嘿!

在 Instagram 于 2016 年 6 月 1 日更新其 API 后,我们无法让 JavaScript Instagram 实现工作。我们检查了客户端设置并注意到它已被置于沙盒模式。当尝试重新提交时,没有一个有效的用户案例适合,我们了解到他们已经取消了我们在未经每个所有者许可的情况下通过该帐户获取其他人内容的权利。

据我了解,新参数“范围”需要设置为“public_content”,这需要用户许可。

因此,目前以下解决方案仅获取用户自己喜欢的图片。在我们还得到用户喜欢的其他人的图像之前。

那么,有谁知道如何获取 2016 年 6 月 1 日发布的帐户中喜欢的内容? 获得 Instagram Business 帐户是否有助于您展示其他人的内容?

这是在主题标签上附加过滤器的代码示例。 如果有人对如何同时过滤标签和喜欢的内容有更好的了解,请告诉我:)

$.fn.instagramFeedInit = function()
{
    if(!$('#instagram-content').length)
    {
        return;
    }
    var container = $('#instagram-content');
    var tag = container.data('hashtag');
    var image_display_count = container.data('image-count');
    var access_token = [INSERT_TOKEN_OR_SOUTH_PARK_REFERENCE_HERE];
    $.ajax({
        type:'GET',
        url: 'https://api.instagram.com/v1/users/self/media/liked?access_token=' + access_token + '&callback=callback&count=99999',
        jsonp: 'callback',
        dataType: 'jsonp',
        success: function(response) {
            var container = $('#instagram-content');
            var i = 0;

            // Loops through images
            $(response.data).each(function(i, el){
                // Check that it has correct tag
                if(jQuery.inArray(tag, el.tags) !== -1)
                {
                    var imageTitle = el.caption.text;
                    var image = el.images.low_resolution.url;
                    var refImage = el.images.standard_resolution.url;
                    if (el.type === 'video') {
                        var videoLink = el.videos.standard_resolution.url;
                        container.append('<a class="lightbox instagramimage mfp-iframe"  title="' + imageTitle + '" href="' + videoLink + '" ><img  src="' + image + '"></a>');
                    }
                    else {
                        container.append('<a class="lightbox instagramimage" title="' + imageTitle + '" href="' + refImage + '" ><img src="' + image + '" class="img-responsive"></a>');
                    }
                    i++;
                    // If we have reached maximum display images
                    if(i == image_display_count) return false;
                }
            }); 
        }
    });
};

【问题讨论】:

    标签: api instagram self


    【解决方案1】:

    请注意,如果您处于沙盒模式,则只有来自授权沙盒用户的帖子才会出现在任何 api 请求中。不管你是否有 public_access 范围。

    注意:您现在需要将scope=public_access 添加到您的授权网址。默认情况下不再包含它

    例如 A 和 B 都是沙盒用户 C 不是。
    A 喜欢 C 的帖子。
    A 的点赞媒体端点将不包括来自 C 的帖子。他对您的沙盒应用程序不可见
    然后A点赞了B的帖子
    A 的点赞媒体端点现在将包含来自 B 的帖子,因为他对您的沙盒应用程序可见

    【讨论】:

    • 感谢四位您的坦诚回答!实际上,我们尝试使用“public_content”的范围参数创建一个新令牌,但由于我们仍处于沙盒模式,因此出现错误。要退出沙盒模式,我们必须重新提交,没有一个有效的用例适合我们。我们希望通过另一种解决方案找到解决此问题的方法,但到目前为止,前景看起来很严峻。
    猜你喜欢
    • 1970-01-01
    • 2015-09-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多