我正在尝试建立一个可以执行以下操作的小型网站:
客户应点击“使用facebook登录”并分配访问令牌。我请求的权限是:'email,user_about_me,user_birthday,user_relationship_details,user_status,publish_actions,friends_birthday,publish_stream,read_friendlists'
我在我的数据库上创建了客户并保存了它的facebook id和accessToken。
在我的服务器上,我运行一个提取朋友列表的cron作业,并通过APP access_token我用这样的url:https://graph.facebook.com/USER_ID/friends?fields=birthday,name,email&access_token=MY_APP_ACCESS_TOKEN调用图api(不是我从中提取的令牌)客户端,因为该令牌应该到期)
问题是,如果我使用客户访问令牌调用此链接,我会获得所有详细信息,但如果我使用app access_token调用,则只获取名称和ID,而不是生日和电子邮件。因为我想每天都运行我的脚本,并在他们有生日时以我的客户的名义向他的朋友发送问候语,我想使用应该不会过期的app access_token。我怎样才能实现这种方法?
更新: 通过这种方法请求长期访问令牌似乎解决了这个问题:https://graph.facebook.com/oauth/access_token?grant_type=fb_exchange_token,也许它可以节省一些时间