我们正在使用 scribe 在 Facebook 上进行身份验证。以下代码片段获取我们调用的 url。
Token requestToken = null;
service = new ServiceBuilder().provider(FacebookApi.class).apiKey(appToken)
.apiSecret(appSecret)
.scope("email")
.callback(callBackUrl)
.build();
// send in a null request token for facebook
authUrl = service.getAuthorizationUrl(requestToken);
这将返回此类型的 url: https ://www.facebook.com/dialog/oauth?client_id=xxx&redirect_uri=yyy&scope=email
此 url 已成功发布一次,并将控制返回到带有参数的回调 uri:代码。回调 uri 完成了一些工作,并重复了整个过程。但是在第一次运行之后,回调 uri 不再被调用。相反,会显示以下错误:
对不起,我们无法处理你的请求。请再试一次
成功和失败运行之间的请求参数没有变化。唯一的更改是对回调 uri 中运行的代码进行了更改,这在此处应该无关紧要。
是什么让它只工作一次但不能再次工作?有没有办法弄清楚实际问题是什么?尝试查看由 invalid_request.php 打印的响应,但没有看到任何错误消息。是否有关于在一定时间内再次运行身份验证的规则?我没有在文档中看到任何提及此事的内容。
有没有人遇到过这个?我一直在搜索,但没有发现提到这个具体问题。