【问题标题】:How to get my own Facebook user access token indefinitely?如何无限期地获取我自己的 Facebook 用户访问令牌?
【发布时间】:2015-03-15 09:16:52
【问题描述】:

我想从 facebook 的 api 中为我的个人网站提取我最近的图像。我似乎无法找到一种方法来仅在没有登录对话框的情况下验证我的用户。有谁知道这是否可能?我可以在图形 API Explorer 中生成我的用户访问令牌,但它会在 1 小时后过期。

【问题讨论】:

    标签: facebook facebook-graph-api facebook-access-token facebook-graph-api-v2.2


    【解决方案1】:

    如何无限期获取我自己的 Facebook 用户访问令牌

    不能

    但您可以extend 这个令牌将在 60 天 内有效 - 称为 长期令牌。因此,如果用户在 60 天内至少访问您的应用程序一次,您就可以无限期地访问用户的数据。

    获取长期用户访问令牌的简单调用-

    GET /oauth/access_token?  
        grant_type=fb_exchange_token&           
        client_id={app-id}&
        client_secret={app-secret}&
        fb_exchange_token={short-lived-token} 
    

    刷新此令牌 - 用户必须再次通过登录过程(调用 login API)来获取短期令牌,然后执行相同的交换以换取 60 天到期的新长期令牌。

    您还可以随时调试您的令牌-

    GET /debug_token?
        input_token={input-token}&    
        access_token={access-token}  // a valid user access token or app access token
    

    【讨论】:

    • 我已经生成了一个长期存在的令牌,但我觉得应该有一种方法可以通过 api 访问您的个人照片而无需登录对话框。我不想让其他人登录。我只想从我的用户那里得到我的照片。任何想法
    • 他的第一句话很明确:你不能。它就是这样设计的。
    • 您只需单击一个按钮(登录),就会发生一些重定向并生成一个新的令牌。看,如果只有你,为什么这是个问题?无论如何,这就是设计,你找不到你想要的。如果您必须无限期地在墙上发布某些内容 - 您可以使用 app-access-token 来完成,但对于照片,您必须按照我提到的方式进行
    猜你喜欢
    • 2016-12-25
    • 1970-01-01
    • 2012-04-15
    • 2014-12-09
    • 2018-07-04
    • 2021-08-18
    • 2020-05-05
    • 2012-06-12
    • 2017-01-28
    相关资源
    最近更新 更多