2013-02-19 148 views
6

我使用Scribe API进行Facebook登录功能,但在提交Facebook身份验证网址后出现跟随错误。redirect_uri不是绝对URI

callback_url = http://localhost:18080/example/pub/social/facebook/signup/step2 

OAuthService service = new ServiceBuilder().provider(FacebookApi.class) 
       .apiKey(apiKey).apiSecret(apiSecret) 
       .scope("email") 
       .callback(callbackUrl).build(); 

String authorizationUrl = service.getAuthorizationUrl(EMPTY_TOKEN); 

return "redirect:" + map.get("AUTHORIZATION_URL"); 

OAuthService service = new ServiceBuilder().provider(FacebookApi.class) 
       .apiKey(apiKey).apiSecret(apiSecret).build(); 
Verifier verifierObj = new Verifier(verifier); 
     //String s = getAccesstoken(verifier); 

Token accessToken = service.getAccessToken(EMPTY_TOKEN, verifierObj) 

我得到下面的错误@最后一行

响应体是不正确。无法从此提取令牌:'{“error”:{“message”:“redirect_uri不是绝对的URI,请检查RFC 3986。”,“type”:“OAuthException”,“code”:191}} “

设置ň的Facebook应用程序:

**Website with Facebook Login** : http://localhost:18080/example/ 
App domain : localhost 

请让我知道,如果我错了......任何地方来的新书记和Facebook平台。

感谢 拉吉

+0

你有一个答案????? #user1989933 – 2013-04-14 10:38:57

+0

[Facebook身份验证重定向\ _uri不是绝对URI]的可能重复(http://stackoverflow.com/questions/12108638/facebook-authentication-redirect-uri-isnt-an-absolute-uri) – 2013-07-07 08:36:54

回答

-1

确保您有HTTPS或HTTP在redirect_uri的前面。并确保您将它称为redirect_uri

-1

callback_url是与Facebook登录站点diferente,更改您的网站与Facebook登录到您的callback_url相同。

小心应用程序进入本地主机,总是尝试使用一台服务器进行测试。

对不起我的英文不好