【发布时间】:2011-10-06 07:52:55
【问题描述】:
我在this reference 工作,并尝试实施 OAuth 协议以允许用户通过 Facebook 登录我的网站。但是,Facebook 的文档非常糟糕,并且在一些关键部分不清楚。
上面说授权需要三个步骤:
用户身份验证(将用户重定向到
https://facebook.com/dialog/oauth?client_id=...&redirect_uri=...,并期望redirect_uri页面被code回调)。效果很好!应用授权(由 Facebook 等处理)。效果很好!
-
应用认证(在回调页面,获取
李>code并调用https://graph.facebook.com/oauth/access_token?client_id=...&redirect_uri=...&client_secret=...&code=...。响应的正文将包含access_token我们需要做的事情)
我知道使用access_token,我可以调用API 等。但是,当它到期时会发生什么?我可以得到一个新的,但到那时它将有很多 HTTP 请求,而且我不再拥有我一开始得到它的code。我必须将code 与access_token 一起存储吗?或者,我是否必须告诉用户重新登录,以便我获得一个新的code 来获得一个新的access_token?
或者,我在这里遗漏了一个关键部分吗?我不需要offline_access 令牌,因为我只会轮询数据以响应用户操作。
【问题讨论】: