grails oauth 플러그인을 사용하고 있습니다. 어느 날 야후의 access_token
을 성공적으로 제공하고 있습니다. 그러나 문제는 -이 토큰 (야후에서 온)은 1 시간의 유효 기간 만 가지고 있습니다. 그리고 그 후에 우리는 그것을 새롭게해야합니다. 그들의 문서를 살펴보면, 토큰이 만료 된 경우에이를 새로 고치는 프로세스가있는 것처럼 보입니다. 그리고이 호출은 사용자의 수락 프로세스를 건너 뜁니다. 그거 아주 좋아!로그인 포스트 API를 기반으로 grails-oauth 플러그인을 사용하여 Yahoo Oauth 액세스 토큰 새로 고침
이제 oauthService.fetchAccessToken
메쏘드를 사용하려고한다면 - get_access_token
url (제공자 쪽에서)을 치는 방법이라고 생각합니다.
oauth.signpost.exception.OAuthNotAuthorizedException :하지만 예외가 받고 인증 는 (서버는 401 응답) 실패했습니다. 이는 소비자 키가 올바르지 않거나 서명이 일치하지 않는 경우 발생할 수 있습니다. oauth.signpost.AbstractOAuthProvider.handleUnexpectedResponse oauth.signpost.AbstractOAuthProvider.retrieveAccessToken에서 oauth.signpost.AbstractOAuthProvider.retrieveToken (AbstractOAuthProvider.java:189)에서 (AbstractOAuthProvider.java:239) (AbstractOAuthProvider.java:99)에서 org.grails.plugins.oauth.OauthService $ fetchAccessToken에서 : org.grails.plugins.oauth.OauthService.fetchAccessToken (286 OauthService.groovy)에서 oauth.signpost.OAuthProvider $ retrieveAccessToken.call (알 소스)에서 .all (알 수 없음 출처)
플러그인 및 푯말 코드로 추가 디버깅했습니다. 그리고 푯말 (지금은)을 살펴 봐야한다고 생각합니다. 플러그인은 나중에 쉽게 수정할 수 있습니다.
여기 accessToken 새로 고침 야후 문서 페이지의 링크의 commonshttp4 클라이언트 - 당신의 내용
, 나는 푯말 (1.2.1.1 단지)를 사용하고 있습니다. http://developer.yahoo.com/oauth/guide/oauth-refreshaccesstoken.htmlYahoo는 accessToken으로 야후에서 보낸 요청에 oauth_session_handle
매개 변수가 필요합니다. 푯말은 이것을 가져올 수있는 방법을 제공합니다 - provider.getResponseParameters()
. 지금 옆에, 나는 refreshToken 요청으로 다시 이러한 매개 변수를 넣어 다음과 같은 방법을 사용하고
- consumer.setAdditionalParameters (httpParams)
그러나이 작동하지 않습니다! 다음은 stacktrace의 일부입니다. 나는 refreshedAccessToken
oauth.signpost.exception.OAuthNotAuthorizedException을 얻을 때 : 인증 는 (서버는 401 응답) 실패했습니다. 이는 소비자 키가 올바르지 않거나 서명이 일치하지 않는 경우 발생할 수 있습니다. oauth.signpost.AbstractOAuthProvider.retrieveAccessToken에서 oauth.signpost.AbstractOAuthProvider.retrieveToken (AbstractOAuthProvider.java:189) 에서 oauth.signpost.AbstractOAuthProvider.handleUnexpectedResponse (AbstractOAuthProvider.java:239) (AbstractOAuthProvider에서.자바 : 99)
이 기대
감사합니다 :-) 훌륭한/관대 한 사람 (들)이 곧 듣고, 살릴
감사합니다. 이것은 나에게 많은 시간과 두통을 덜어 주었다! – Craigo