我们为多个用户构建网站模板,这些模板都托管在不同的URL上。有些人要求在Facebook / Instagram上定制他们的个人资料。这个问题过去很容易通过一些jQuery插件或其他东西来解决,但自从Facebook的新数据政策要求我们通过应用程序审查。
我的问题是,我没有一个带有登录程序的应用程序,所以我不能真正使用OAuth实现Facebook登录,也不能通过所需的步骤来获得具有所需权限的永久访问令牌。如何访问常规网站的Facebook和Instagram API?这种情况还会发生吗?
发布于 2021-04-01 14:05:29
更新(2021年6月)
由于Instagram更新,jQuery插件jQuery.instagramFeed已被归档,导致其无法运行。
我进行了广泛的搜索,得出的结论是(目前)没有任何合法的方式在不使用API的情况下在网站上显示Instagram提要。在这一点上,我发现的所有变通方法都是利用代理服务器来规避Instagram的限制。这些“解决方案”中的任何一个最终都是lack,(在我看来)由于缺乏稳定性而不适合生产。
原始解决方案(2021年4月)
这里有一个构建Instagram提要的解决方案,它不需要使用Instagram API。这是一个名为jQuery.instagramFeed的jQuery插件。如果我找到一个可行的替代方案,我会更新我的答案。
它不需要任何身份验证,只需要Instagram用户名。
唯一的潜在缺点是,这个插件只适用于设置为公共的Instagram账户。话又说回来,对于许多用例来说,这可能不是问题--因为如果有人想在他们的网站上展示他们的Instagram feed,他们可能会希望他们的账户无论如何都是公开的。
这是一个jsFiddle。我更喜欢在这里只添加一个代码片段,但是StackOverflow还没有让它变得非常可行。
<div id="instagram-feed"></div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script src="https://www.sowecms.com/demos/jquery.instagramFeed/jquery.instagramFeed.min.js">
<script>
(function($){
$(window).on('load', function(){
$.instagramFeed({
'username': 'github',
'container': "#instagram-feed",
'display_profile': true,
'display_biography': true,
'display_gallery': true,
'display_captions': true,
'max_tries': 8,
'callback': null,
'styling': true,
'items': 8,
'items_per_row': 4,
'margin': 1,
'lazy_load': true,
'on_error': console.error
});
});
})(jQuery);
</script>https://stackoverflow.com/questions/58526148
复制相似问题