【问题标题】:Instagram public media APIInstagram 公共媒体 API
【发布时间】:2015-07-14 20:31:02
【问题描述】:
Instagram API 政策是否允许使用
https://instagram.com/{user-id}/media/
从 iOS 应用获取最新媒体的端点。我们尝试使用记录在案的
api.instagram.com/v1/users/{user-id}/media/recent
但它需要访问令牌。通过调查 Instagram 网络应用,我发现它使用第一个链接的端点来获取用户数据。
【问题讨论】:
标签:
ios
instagram
instagram-api
【解决方案1】:
Instagram 网络应用未使用您提供的链接,它正在使用:
GET https://instagram.com/{用户名}/
在脚本标签内的响应中,它会设置 Window._sharedData 以及包括用户媒体在内的所有数据:
window._sharedData.entry_data.UserProfile[0].userMedia
我不确定这些政策,但您可以在不调用 API 的情况下获取和提取这些数据。
但是,使用 API 会更容易,也是首选方式。当您要获取一些公共媒体时,您可以使用固定的client_id 而不是access_token 来避免authentication:
某些 API 只需要使用 client_id。一个简单的client_id
将您的服务器、脚本或程序与特定的
应用。但是,其他请求需要身份验证 -
代表用户提出的具体请求。经过身份验证的请求
需要一个 access_token。这些令牌对用户来说是唯一的,应该
安全存放。访问令牌可能随时在
未来。
API 调用:
api.instagram.com/v1/users/{user-id}/media/recent/?client_id={client_id}