Passport facebook 令牌 Oauth2 在令牌良好时抛出内部服务器错误但在令牌错误时工作正常

Passport facebook token Oauth2 throwing Internal Server Errors when the token is good but works fine when token is wrong

我在这里错过了什么?我浏览了这里的所有主题并 google 研究了一段时间:

但是当一切都很好并且我从 Postman 或从我的前端发送一个带有良好令牌的请求时,我收到内部服务器错误,告诉我用户未在该行定义。我错过了什么?

路线代码:

app.get(
  '/user',
  passport.authenticate('facebook-token', { session: false }),
  function(req, res) {
    res.send('SUCCESS');
  }
);

没有导入的所有其他代码:

app.use(cors());
app.use(express.json());
app.use(helmet());
app.use(bodyParser.urlencoded({ extended: true }));
app.use(passport.initialize());
passport.use(
  new FacebookTokenStrategy(
    {
      clientID: config.get('facebook.clientID'),
      clientSecret: config.get('facebook.clientSecret')
    },
    function(accessToken, refreshToken, profile, done) {
      User.findOrCreate({ facebookId: profile.id }, function(error, user) {
        return done(error, user);
      });
    }
  )
);

我正在完全按照文档中的方式导入 npm 包:

const FacebookTokenStrategy = require('passport-facebook-token');

我对这个一无所知。

app.use(cors());
app.use(express.json());
app.use(helmet());
app.use(bodyParser.urlencoded({ extended: true }));
app.use(passport.initialize());
passport.use(
  new FacebookTokenStrategy(
    {
      clientID: config.get('facebook.clientID'),
      clientSecret: config.get('facebook.clientSecret')
    },
    function(accessToken, refreshToken, profile, done) {
      return done(null, profile);
    }
  )
);

试试这个