使用Google帐户和OAuth插件登录Grails应用程序
我正在尝试创建一个登录页面,用户可以在其中使用他们的谷歌帐户登录。我正在使用grail的“oauth:2.6.1”插件来实现这一点。 我在谷歌注册了一个应用程序,获得了客户端id和密码,但我无法在config.groovy中使用它。它抛出以下异常:使用Google帐户和OAuth插件登录Grails应用程序,grails,oauth-2.0,Grails,Oauth 2.0,我正在尝试创建一个登录页面,用户可以在其中使用他们的谷歌帐户登录。我正在使用grail的“oauth:2.6.1”插件来实现这一点。 我在谷歌注册了一个应用程序,获得了客户端id和密码,但我无法在config.groovy中使用它。它抛出以下异常: [http-bio-8080-exec-10] ERROR errors.GrailsExceptionResolver - OAuthException occurred when processing request: [GET] /My
[http-bio-8080-exec-10] ERROR errors.GrailsExceptionResolver - OAuthException occurred when processing request: [GET] /MyApp/oauth/google/authenticate - parameters:
redirectUrl:
Response body is incorrect. Can't extract token and secret from this: 'Consumer is not registered: 553489692142-6l3c1tk0l0rtc7dgebeijbh5jtcv4tor.apps.googleusercontent.com
'. Stacktrace follows:
Message: Response body is incorrect. Can't extract token and secret from this: 'Consumer is not registered: 553489692142-6l3c1tk0l0rtc7dgebeijbh5jtcv4tor.apps.googleusercontent.com
'
Line | Method
->> 41 | extract in org.scribe.extractors.TokenExtractorImpl
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
| 27 | extract in ''
| 64 | getRequestToken in org.scribe.oauth.OAuth10aServiceImpl
| 40 | getRequestToken in ''
| 45 | getRequestToken in ''
| 78 | authenticate in uk.co.desirableobjects.oauth.scribe.OauthController
| 198 | doFilter . . . in grails.plugin.cache.web.filter.PageFragmentCachingFilter
| 63 | doFilter in grails.plugin.cache.web.filter.AbstractFilter
| 1145 | runWorker . . . in java.util.concurrent.ThreadPoolExecutor
| 615 | run in java.util.concurrent.ThreadPoolExecutor$Worker
^ 745 | run . . . . . . in java.lang.Thread
我的grails版本是2.5。请帮我整理一下。看来你的谷歌api证书不好。在google开发者控制台中检查您的密钥/密码。我不知道这是怎么回事。web应用程序的客户端ID客户端ID 553489692142-6l3c1tk0l0rtc7dgebeijbh5jtcv4tor.apps.googleusercontent.com电子邮件地址553489692142-6l3c1tk0l0rtc7dgebeijbh5jtcv4tor@developer.gserviceaccount.com客户端机密fnIlgy0dw7u\u V4lXZlsRVHtQ重定向URI JavaScript源代码您是否在google开发控制台中检查了URL?我想你配置错了。可能您使用https而不是http或相反。我尝试了重定向URI:。客户端Id已更新。但是仍然会发生同样的异常。JavaScript的起源如何?您应该使用与在开发人员控制台中配置的相同的http或https端口。您应该明确地指定这一点。我认为重定向URL差别不大,但JavaScript源代码差别很大。如果您尝试通过https而不是http登录,请查看。