我创建了两个名为s1
和s2
的servlet。
s1
将请求转发给
https://graph.facebook.com/oauth/authorize?client_id=41050677*****&redirect_uri=http://localhost:8080/fb10/s2& scope=publish_stream,create_event
在s2
我收到代码并将其重定向到Facebook成功页面:
https://graph.facebook.com/oauth/access_token?client_id=410506779*********&redirect_uri=http://www.facebook.com/connect/login_success.html& client_secret=22049dc145289c2dd7**************&code=(extract code form url)
但是我收到了一个错误:
{
"error": {
"message": "Error validating verification code.",
"type": "OAuthException",
"code": 100
}
}
这是如何引起的,我该如何解决?我使用responce.sendredirect();
进行重定向。
答案 0 :(得分:0)
你不应该进行重定向来交换令牌的代码 - 想想关于它的一秒钟,请 - 您将应用程序保密到这个URL,所以当您将客户端重定向到时,用户可以轻松地在那里发现它!
https://developers.facebook.com/docs/authentication/server-side/显示明确步骤 4。交换用户访问令牌的代码:
用户授权您的应用后,您应该建立一个服务器侧请求来交换上面返回的用户访问令牌代码。