我查看了 Facebook 的在线文档,但找不到使用用户的第三方 ID ( third_party_id
) 字段手动构建 Facebook 用户的个人资料图片 Uri 的方法。
例如(不起作用):
https://graph.facebook.com/<FACEBOOK_THIRD_PARTY_ID>/picture?type=square
http://developers.facebook.com/docs/reference/api/user/
third_party_id: 用户的匿名但唯一标识符;仅在通过字段 URL 参数特别请求时返回
使用 Facebook ID:
使用用户的 Facebook ID 检索他们的个人资料图片图像 Uri 的工作原理:
https://graph.facebook.com/<FACEBOOK_ID>/picture?type=square
例如(作品):
<img src="https://graph.facebook.com/568916752/picture?type=square" />
使用 Facebook 用户名:
使用用户的 Facebook 用户名检索他们的个人资料图片图像 Uri 有效:
https://graph.facebook.com/<FACEBOOK_USERNAME>/picture?type=square
例如(作品):
<img src="https://graph.facebook.com/brett.scott/picture?type=square" />
Facebook 第三方 ID:
最佳实践建议我将用户的third_party_id
而不是用户的 Facebook ID ( id
) 存储在我的数据库中。我不应该将用户的 Facebook ID 公开给我网站的其他用户。原因?因为一旦用户可以看到另一个用户的个人资料图片 Uri,其中包含他们的 Facebook ID,他们就可以找到其他人的个人资料(参见下面的示例)。我敢肯定还有其他原因。
加载个人资料图片:
https://graph.facebook.com/brett.scott/picture?type=square
- 或者 -
https://graph.facebook.com/568916752/picture?type=square
然后任何用户都可以加载上述用户的个人资料:
http://www.facebook.com/brett.scott
- 或者 -
http://www.facebook.com/568916752
我不想使用 Facebook Graph 请求获取每个用户的个人资料图片 Uri picture
,因为它太慢了。如果一个页面上有 20 张 Facebook 图片,则有 20 个 HTTP 请求返回 Facebook 的服务器。我的目标是零。
是否有另一种方法可以使用 Facebook 用户的个人资料图片获取他们的third_party_id
或缺少的功能?
https://graph.facebook.com/<FACEBOOK_THIRD_PARTY_ID>/picture?type=square
例如(third_party_id
为我的应用程序生成):
https://graph.facebook.com/0u0JrPIriHa3fgEDostj7v8dbdo/picture?type=square