首页 文章

为FQL / Graph API获取Facebook用户access_token

提问于
浏览
0

我目前正在尝试让用户access_token向Facebook Graph API提交FQL查询 . 目标是最终从FB页面获取最新的状态 .

我通过点击以下网址获得app access_token:

https://graph.facebook.com/oauth/access_token?client_id=[CLIENT_ID]&client_secret=[CLIENT_SECRET]&grant_type=client_credentials

当我使用Graph API资源管理器工具编写我的FQL查询 (SELECT status_id, message, time FROM status WHERE uid="[PAGE_ID]") 时,由于资源管理器默认情况下使用我的用户access_token,因此无问题 . 在FB调试器工具中调试此access_token会验证它是否同时使用了我的app_id和user_id . 当我使用app access_token发出请求(到 https://graph.facebook.com/fql?q=[QUERY ABOVE]&access_token=[APP_TOKEN] )时,我收到以下错误:

{"error":{"message":"A user access token is required to request this resource.","type":"OAuthException","code":102}}

是否有一些使用FB API访问用户access_token的方法?

谢谢!!

1 回答

  • 0

    更改您的FQL查询,您应该能够得到您想要的 . 查询 status 需要用户访问令牌,但可以使用应用访问令牌查询公共页面的 stream . type = 46 将结果限制为状态更新 .

    SELECT post_id, message, created_time FROM stream WHERE source_id = [PAGE_ID] 
      AND type = 46
    

相关问题