oAuthOperations를 사용하여 스프링 소셜과 로그인을 사용했을 때 콜백 URI를 설정하는 방법입니다. 일 위ProviderSignInController로 콜백 URI를 설정하는 방법은 무엇입니까?
ConnectionFactoryRegistry registry = (ConnectionFactoryRegistry) conf.connectionFactoryLocator();
FacebookConnectionFactory connectionFactory = (FacebookConnectionFactory)registry.getConnectionFactory("facebook");
OAuth2Operations oauthOperations = connectionFactory.getOAuthOperations();
OAuth2Parameters params = new OAuth2Parameters();
params.setRedirectUri("http://localhost:8080/Social/CallBackFB?au=yes");
String authorizeUrl = oauthOperations.buildAuthorizeUrl(GrantType.AUTHORIZATION_CODE, params);
try
{
response.sendRedirect(authorizeUrl);
}
이 마법처럼 일했다,하지만 지금은 ProviderSignInController 방법이 함께 콜백 URI를 설정하는 말씀 해주십시오 사용하고, 나는 빈의 속성을 설정하기 위해 노력했다. 페이스 북 설정
Website with Facebook Login
Site URL: http://localhost:8080/Social/CallBackFB/
App on Facebook
Canvas Page: https://apps.facebook.com/weblikeapp
https://apps.facebook.com/weblikeapp
Canvas URL: http://localhost:8080/Social/CallBackFB/
Secure Canvas URL: https://localhost:8080/Social/CallBackFB/
이, 실제 질문이 게시물의 제목 실제적인 질문입니다 :
<bean class="org.springframework.social.connect.web.ProviderSignInController">
<constructor-arg ref="connectionFactoryLocator" />
<constructor-arg ref="usersConnectionRepository" />
<constructor-arg ref="simpleSignInAdapter">
<!-- <bean class="com.controllers.SimpleSignInAdapter" /> -->
</constructor-arg>
<property name="PostSignInUrl"
value="http://localhost:8080/Social/CallBackFB?au=yes" />
</bean>
는하지만 여전히 내가 편집 페이스 북
{
"error": {
"message": "Invalid redirect_uri: Given URL is not allowed by the Application configuration.",
"type": "OAuthException",
"code": 191
}
}
에서이 응답을 얻을!
콜백을 올바르게 구성하는 방법을 알려주십시오. spring-social-quickstart-30x를 참조하고 있습니다. https://github.com/spring-projects/spring-social-samples/tree/master/spring-social-quickstart
나는 facebook에서 콜백을 설정하는 방법을 알아 냈다. 이제 ProviderSigninController에서 URI를 설정하는 방법에 대한 도움을 얻으려고한다. 도와주세요 !
많은 분들께 미리 감사드립니다 !!
Hello Maksym, 답장을 보내 주셔서 감사합니다. 수정 사항에도 페이스 북에 대한 세부 정보를 제공했습니다. 그렇다면 페이스 북으로 로그인을 테스트하기 위해 애플리케이션에 대한 실제 URL이 필요하다는 뜻인가요? 로컬로 테스트 할 수있는 방법이 있습니까? 다시 한 번 감사드립니다! –
Previosly 테스트 목적으로 localhost를 사용할 수있었습니다. "페이스 북 로그인 웹 사이트"옵션의 값을'http : // localhost : 8080/Social /' –
과 같은 것으로 변경하려고 시도하십시오. –