簡體   English   中英

使用通行證linkedin策略時出現InternalOAuthError

[英]InternalOAuthError when using passport-linkedin strategy

我正在與通行證護照一起工作,但出現此錯誤。

InternalOAuthError: failed to obtain request token
    at /Users/davey/code/node/appify-frontend/node_modules/passport-linkedin/node_modules/passport-oauth/lib/passport-oauth/strategies/oauth.js:196:36
    at /Users/davey/code/node/appify-frontend/node_modules/passport-linkedin/lib/passport-linkedin/strategy.js:80:19
    at passBackControl (/Users/davey/code/node/appify-frontend/node_modules/passport-linkedin/node_modules/passport-oauth/node_modules/oauth/lib/oauth.js:397:13)
    at IncomingMessage.<anonymous> (/Users/davey/code/node/appify-frontend/node_modules/passport-linkedin/node_modules/passport-oauth/node_modules/oauth/lib/oauth.js:409:9)
    at IncomingMessage.emit (events.js:129:20)
    at _stream_readable.js:908:16
    at process._tickCallback (node.js:355:11)
GET /oauth/linkedin 500 1074ms - 786b

這是我的設置

exports.setup = function (config) {
  var passport = require('passport');
  var LinkedinStrategy = require('passport-linkedin').Strategy;

  passport.use(new LinkedinStrategy({
      consumerKey: config.linkedin.clientID,
      consumerSecret: config.linkedin.clientSecret,
      callbackURL: config.linkedin.callbackURL
    },
    function(token, tokenSecret, profile, done) {
      console.log(token, tokenSecret, profile);
      return done(null, true);
    }
  ));
};

我的路由設置如下

router
    .get('/', 
        function(req, res, next) {
            console.log("[OAuth2:redirect:query]:", JSON.stringify(req.query));
            console.log("[OAuth2:redirect:body]:", JSON.stringify(req.body));
            next();
          },
        passport.authenticate('linkedin', {
        failureRedirect: '/settings/connected-accounts',
        session: false
    }))

    .get('/callback', passport.authenticate('linkedin', {
        failureRedirect: '/settings/connected-accounts',
        session: false
    }), function (req, res){
        res.redirect('/settings/connected-accounts');
    });

在同一個應用程序中,我設置了twitter和facebook oauth,它們都工作得很好。 我不知道是什么導致了此錯誤,並已嘗試了所有方法。

在我的linkedin開發人員帳戶中,我已經按需配置了所有內容。

授權重定向網址:

http://testdomain.ngrok.io/oauth/linkedin/callback

默認的“接受”重定向URL:

http://testdomain.ngrok.io/settings/connected-accounts

我首先使用了在端口9000上運行的localhost url,但是當失敗時,我將在本地運行的應用程序暴露給了實時url,但是仍然遇到相同的錯誤。 任何幫助表示贊賞。 謝謝

InternalOAuthError與password-oauth1( https://github.com/jaredhanson/passport-linkedin/blob/master/lib/strategy.js )有關,但是您可以根據路由設置使用OAuth2。 因此,請嘗試切換至Passport-linkedin-oauth2

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM