缺少必需的参数:重定向

在我的MEAN Stack应用程序中使用passport-google-oauth: "0.2.0" (在这里找到:https://github.com/jaredhanson/passport-google-oauth)。 当我运行应用程序并尝试使用Google API登录时,会返回此错误

  • 这是一个错误。
  • 错误:invalid_request

    缺少必需的参数:redirect_uri

    请求详细信息scope = https://www.googleapis.com/auth/plus.login response_type = code redirect_uri = client_id = xxxx-xxxx.apps.googleusercontent.com

    重定向参数在这里是passport-init.js

    var GoogleStrategy = require('passport-google-oauth')。OAuth2Strategy;

    var GOOGLE_CLIENT_ID =“xxx-xxx.apps.googleusercontent.com”; var GOOGLE_CLIENT_SECRET =“xxxx”;

    passport.use(新GoogleStrategy({
    客户ID:GOOGLE_CLIENT_ID,
    clientSecret:GOOGLE_CLIENT_SECRET,
    callbackUrl:“http://127.0.0.1:3000/auth/google/oauth2callback”},函数(accessToken,refreshToken,profile,done){done(null,profile); }));

    这里的路线是authenticate.js

    router.get('/ google',passport.authenticate('google',{scope:['https://www.googleapis.com/auth/plus.login']}),function(req,res){} );

    router.get('/ google / oauth2callback',passport.authenticate('google',{successRedirect:'/ auth / success',failureRedirect:'/ auth / failure'}),function(req,res){res.redirect ('/');});

    我相信我错过了一些简单的东西,但我不知道要在这个问题中添加什么,这会给你提供最好的信息。 请问,我会尽力回答你。 这就是相关数据的感觉。

    有趣的是,如果我手动添加callbackUrl,那么一切都很好。 我可以达到Google API的罚款。 然后,我可以选择“允许”或“拒绝”请求。


    在定义GoogleStrategy时,JSON键应该是callbackURL而不是callbackUrl(即,首字母大写)。 有这个'问题'以及;-)


    我有一个使用相同策略的工作示例。 由于我没有得到这个错误,不能确定问题是什么,但我想建议你检查以下内容:

  • 添加到您的谷歌策略创建(新的GoogleStrategy({...}))范围:

    范围:'https://www.googleapis.com/auth/userinfo.email',

  • 确保您的google api在dev api控制台中正确配置。 特别:

  • 在API和auth |下 凭证| OAuth同意屏幕 - 所有必需的网址。
  • 在API和auth |下 凭证 - 查找您的web api客户端并查看您授权的所有相关URI。 如果呼叫来自或者重定向到本节未列出的页面,则认证无效。
  • 链接地址: http://www.djcxy.com/p/83209.html

    上一篇: Missing required parameter: redirect

    下一篇: XOAuth2 for Gmail error Invalid Credential