【问题标题】:Facebook user url by idFacebook 用户 url 按 id
【发布时间】:2012-10-01 10:07:40
【问题描述】:

我有一个 FB id 列表,有没有一种可以在不使用图形查询的情况下构建其 FB url 的规范方法?

例如,我有 ids 3、4、5,我想要他们的 Facebook URL,而不使用图形 api 并将它们保存下来

【问题讨论】:

  • "不使用图形 api" - 无论如何您都需要向 facebook 执行请求。为什么不正确地做(使用graph api)?

标签: facebook


【解决方案1】:

我已经一起收集了信息:

最后:如果没有额外的 Facebook 权限检查,它就无法工作:(

【讨论】:

    【解决方案2】:

    截至目前(2019 年 11 月),graph.api V5.0

    图形 API 说,refer graph api

    指向此人时间线的链接。只有当点击链接的人登录 Facebook 并且是正在查看其个人资料的人的朋友时,该链接才会解析。

    【讨论】:

      【解决方案3】:

      标记的答案似乎已过时并且不起作用。

      Facebook 现在只提供与应用程序相关的唯一 ID,它不等于 userId 和 profileUrl,并且用户名将为空。

      me?fields=id,name,links Graph Version 2.4 之后也会贬值

      现在唯一的选择是从您的开发者控制台请求 user_links 权限。

      并在进行 facebook 登录时将其传递给范围

      scope: ['user_link'] }
      

      或者通过 api 调用

      【讨论】:

        【解决方案4】:

        更新 2: facebook 不再提供此信息。有关于行为改变的官方公告 (https://developers.facebook.com/blog/post/2018/04/19/facebook-login-changes-address-abuse/),但没有其他替代方法。

        是的,只需使用此链接并将您的 ID 附加到 id 参数即可:

        https://facebook.com/profile.php?id=<UID>
        

        例如:

        https://facebook.com/profile.php?id=4
        

        会自动将您重定向到https://www.facebook.com/zuck,这是马克扎克伯格的个人资料。

        如果您想对所有 ID 执行此操作,则可以使用循环来执行此操作。

        如果你愿意,我可以为你提供一个 sn-p。

        更新:或者,您也可以这样做:

        https://facebook.com/<UID>
        

        那就是:https://facebook.com/4,它会自动重定向到 Zuck!

        【讨论】:

        • 以及如何自动检索结果(重定向)url?
        • 如果 url 的唯一目的是简单地将您的用户重定向到他们的个人资料或任何其他个人资料,您可以使用上述网址,fb 会自动将人发送到适当的个人资料。但如果目的是获取他们的数据,那么您将不得不使用图形 API。
        • 我不是 OP,OP 询问如何检索 url ;-)
        • 现在不行了。 facebook.com/ 被禁用了吗?
        • https://facebook.com/&lt;UID&gt; 使用它,它不断将我重定向到我的主页
        【解决方案5】:

        已接受的答案对我不起作用,这样做:

        https://www.facebook.com/app_scoped_user_id/10152384781676191
        

        【讨论】:

        【解决方案6】:

        最简单、最正确(合法)的方式是使用graph api。

        只需执行请求:http://graph.facebook.com/4

        返回

        {
           "id": "4",
           "name": "Mark Zuckerberg",
           "first_name": "Mark",
           "last_name": "Zuckerberg",
           "link": "http://www.facebook.com/zuck",
           "username": "zuck",
           "gender": "male",
           "locale": "en_US"
        }
        

        然后使用link 键。

        您还可以通过使用fields 参数来减少流量:http://graph.facebook.com/4?fields=link 只获取您需要的内容:

        {
           "link": "http://www.facebook.com/zuck",
           "id": "4"
        }
        

        【讨论】:

        • 我认为没有access_tokenhttps 是行不通的。示例:https://graph.facebook.com/4?access_token=YOUR_YOKEN
        • 没用,IE11,但第一个 URL 确实从 ID 检索到相同的配置文件,但没有昵称
        • 对不起,它有效,我只需要在 url 查询 https://graph.facebook.com/&lt;ID&gt;?fields=link&amp;access_token=&lt;ACCESS_TOKEN&gt; 上添加 fields=link
        • 从 6 月 23 日起,无论是否使用 fields=link,这都不再适用
        • 它不再工作了,绝对没有替代品了。
        猜你喜欢
        • 1970-01-01
        • 2012-08-11
        • 1970-01-01
        • 1970-01-01
        • 2021-11-10
        • 2013-05-28
        • 1970-01-01
        • 2018-12-11
        • 1970-01-01
        相关资源
        最近更新 更多