【问题标题】:OAuth - How to get Facebook user profile url?OAuth - 如何获取 Facebook 用户个人资料网址?
【发布时间】:2015-10-15 12:19:19
【问题描述】:

我不知道为什么 Facebook url 中的 id 和控制器中的 ProviderKey 之间存在差异。

这是我的个人资料网址:https://www.facebook.com/profile.php?id=100008491477935。所以,我的 id 是 100008491477935

但是,当我使用该帐户登录时,ProviderKey 不一样:

var loginInfo = await AuthenticationManager.GetExternalLoginInfoAsync();

loginInfo.Login.LoginProvider1488586148101087

我可以从这个网址获取图片:https://graph.facebook.com/1488586148101087/picture

但是,我在尝试转到 https://www.facebook.com/profile.php?id=1488586148101087 时收到错误消息 Profile Unavailable

id 不正确(不同于 ProviderKey)。

我想通过使用ProviderKey 来获取用户个人资料网址,例如id。有没有办法做到这一点?

谢谢!

【问题讨论】:

  • 我认为第二个 URL 可能是错误的。发布的两个 URL(不正确和正确)是相同的。
  • @Coulton 抱歉,我已经编辑了第二个网址。

标签: asp.net-mvc facebook facebook-graph-api


【解决方案1】:

随着从 Facebook Graph API v1.0 升级到 v2.0,Facebook 正在使用“应用范围内的用户 ID”,因此您无法再在应用中看到“原始”用户 ID。

详细答案请参考本帖(问题)。

Get Facebook User ID from app-scoped User ID

祝你好运

【讨论】:

  • 这意味着:没有办法获得像https://www.facebook.com/profile.php?id=xxx 这样的用户个人资料网址,不是吗?
  • 据我所知,您可以从带有应用范围 id 但在浏览器中不完整的配置文件的图形 Api 中获取允许的用户详细信息。
  • 用户对象的link 属性将返回您可以使用的https://www.facebook.com/app_scoped_user_id/{app-scoped id here}/ 形式的链接,它会自动重定向到实际的用户配置文件。
  • 这行不通了。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-01-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-10
  • 2015-02-13
  • 1970-01-01
相关资源
最近更新 更多