2013-05-03 51 views
2

我試圖通過Spring Social和spring-social-google實現Google Oauth2。初始身份驗證正常。然而,經過一段時間認證過期,我被如何從Spring社交中恢復ExpiredAuthorizationException

org.springframework.social.ExpiredAuthorizationException: The authorization has expired. 

如何從這種異常中恢復?是否有可能以某種方式刷新授權?

回答

1

嘗試在授權期間發送其他access_type=offline參數。它可能看起來像這樣:

<form ...> 
    ..... 
    <input type="hidden" name="access_type" value="offline"/> 
</form> 

通常在這種情況下,授權將自動刷新爲您。有關更多詳細信息,請參閱this entry

+0

我將這個參數發佈到spring社交控制器。可能該控制器不會將它傳遞給谷歌。 – 2013-05-03 12:36:46

+0

這個拉取請求支持這個假設:https://github.com/GabiAxel/spring-social-google/pull/23 – 2013-05-03 13:24:47

+0

我分叉了包含拉請求的spring-social-google。現在我可以刷新連接了!接受答案,因爲它使我走上正軌。 – 2013-05-04 18:10:54