【问题标题】:Programmatically detect if a Facebook page was merged with another page以编程方式检测 Facebook 页面是否与另一个页面合并
【发布时间】:2014-11-02 06:45:25
【问题描述】:

Facebook 已开始“合并”重复页面。例如,如果您访问电影 Good Fellas:https://www.facebook.com/105652212803097 的此页面,您会注意到它重定向到现在的主页:https://www.facebook.com/goodfellasthemovie,同时显示以下消息:"Goodfellas was merged with this page"

这很好,但用户的喜欢也从“旧”页面复制到“新”页面,而没有从“旧”页面中删除。因此,如果您查询喜欢合并页面的用户的点赞,您将获得 2 个不同的点赞 id,它们现在是同一页面 - 没有指示页面之间的关系,或者其中一个点赞是自动生成的。

有没有办法以编程方式检测一个页面是否已与另一个页面合并?或者这两个页面是相互关联的?或者页面不再起作用并重定向?

【问题讨论】:

    标签: facebook facebook-graph-api


    【解决方案1】:

    自从发布问题后,我找到了答案。

    有一个名为“best_page”的字段提供了您正在查询的页面的最佳备用 ID。使用电影 Good Fellas 的原始示例,如果您使用“best_page”字段查询他们的任何“坏”页面,例如页面 id 102154619826846,如果该页面还不是最佳页面,您将返回“best_page”指向 193801173989136 的主页 ID 的属性:

    {
      "id": "102154619826846", 
      "name": "Good Fellas", 
      "best_page": {
        "category": "Movie", 
        "name": "Goodfellas", 
        "id": "193801173989136"
      }
    }    
    

    https://developers.facebook.com/tools/explorer?method=GET&path=102154619826846%2F%3Ffields%3Did%2Cname%2Cbest_page&version=v2.1

    如果您正在查询的页面已经是最佳页面,您将不会在响应中收到任何“best_page”属性:

    {
      "id": "193801173989136", 
      "name": "Good Fellas"
    }  
    

    https://developers.facebook.com/tools/explorer?method=GET&path=193801173989136%2F%3Ffields%3Did%2Cname%2Cbest_page&version=v2.1

    为了扩展解决方案,如果您正在查询所有用户的喜欢,并且想知道每个页面的最佳页面而无需单独重新查询每个页面,您可以将其与 likes 端点一起使用:

    /v2.1/me/likes?fields=id,name,best_page{id} 
    

    https://developers.facebook.com/tools/explorer?method=GET&path=me%2Flikes%3Ffields%3Did%2Cname%2Cbest_page%7Bid%7D&version=v2.1

    这将返回带有“best_page”属性的所有喜欢,每个喜欢都有一个更好的页面。与上面类似,只有不是最佳页面的页面才会返回“best_page”属性。

    【讨论】:

    • 您是如何找到 id 193801173989136 的?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-12-29
    • 2011-11-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-10
    • 2018-12-29
    相关资源
    最近更新 更多