小编典典

将来自其他帐户的Instagram照片显示到我的网页

ajax

我正在寻找不在我的网站页面上显示instagram照片的方法,但是不能显示。如果我只有instagram用户的帐户名(例如jamieoliver),该怎么办?我的网站写在Wordpress上。

需要不显示 我的 图像


阅读 259

收藏
2020-07-26

共1个答案

小编典典

此URL格式http://instagram.com/{instagram user name}/media将返回一个json文件,其中包含来自该用户的最新(20 +/-)媒体文件。

jamieoliver您的示例中,您可以执行http://instagram.com/jamieoliver/media

您可以json通过(jQuery)ajax调用来处理该响应,例如:

$.ajax({
    url: "http://instagram.com/jamieoliver/media",
    dataType : "jsonp", // this is important
    cache: false,
    success: function(response){
        // process the json response to get images
        // e.g. the first image should be something like : 
        // response.items.images[0].low_resolution
        // you could call an external function to iterate through the response
    }
});

当然,我假设您了解json格式的样子。如果您使用的是WordPress,也许您可​​以找到一个插件来处理json响应


编辑

似乎来自的响应http://instagram.com/{author_name}/media不是jsonp而是json(请参阅此内容以获取更多参考),但是设置json
dataType将返回跨域错误。

解决方法是使用whatorigin.org第三方应用程序绕开同源政策。

因此,将网址设置为

"http://whateverorigin.org/get?url=" + encodeURIComponent("http://instagram.com/{author_name}/media");

whateverorigin服务器将作为代理,并返回正确的json格式。

注意 ,您仍然需要dataType : "jsonp"在ajax调用中使用。

参见 JSFIDDLE

2020-07-26