正如/user
link
中所述,"link":"https://www.facebook.com/1091552020"
字段包含用户的个人资料网址。但是,此网址通常会重定向到其他网址(即显示在Google搜索结果中的网址)。
有没有办法通过Facebook API确定给定个人资料的最终重定向位置("真实" URL)?
例如,给定:
https://www.facebook.com/sbhutiani
我想从API中检索{{1}}
答案 0 :(得分:19)
您无法再获取真实ID或用户名,因此无法获得“真实网址”。更多信息:https://developers.facebook.com/docs/apps/changelog
您可以通过以下API调用获取指向用户个人资料的链接:/me?fields=link
查看Facebook文档中的“App Scoped IDs”。
更新:似乎无法再链接到用户个人资料:https://developers.facebook.com/blog/post/2018/04/19/facebook-login-changes-address-abuse/
答案 1 :(得分:3)
Facebook似乎创建了一个名为user_link
的单独权限(用户需要批准),您才能获取该权限。您可以在此处查看更多详细信息:
https://developers.facebook.com/docs/facebook-login/permissions/#reference-user_link
当您使用/me?metadata=1
查询有关端点可用字段的元数据时,这就是link
描述所说的:
{
"name": "link",
"description": "A link to the person's Timeline. The link will only resolve if the person clicking the link is logged into Facebook and is a friend of the person whose profile is being viewed.",
"type": "string"
}
如果用户已批准该权限,则可以像以前一样获取链接:
/me?fields=link
{
"link": "https://www.facebook.com/app_scoped_user_id/SOME_TOKEN/",
"id": "USER_ID"
}