oauth2.0 Facebook在Nodejs中的护照策略到2023年将不起作用

pw136qt2  于 2023-11-16  发布在  其他
关注(0)|答案(1)|浏览(130)

我曾尝试在Nodejs中构建Passport Oauth登录策略,但似乎到2023年它就不起作用了。点击登录按钮触发标准服务器API(如/auth/facebook/)并将passport设置为中间件后,它甚至不会启动FB登录弹出窗口,或任何用于此目的的窗口。

passport.use(new FacebookStrategy({
  clientID: '**********',
  clientSecret: '************',
  callbackURL: "http://localhost:3000/auth/facebook/cb"
},
  function(accessToken, refreshToken, profile, cb) {
        console.log(profile)
    return cb(null, profile);
  }
));

app.get('/auth/facebook', passport.authenticate('facebook', { display: 'popup' });

app.get('/auth/facebook/cb',  passport.authenticate('facebook'), (req, res, next) => {
  res.send(res.user)
});

字符串
我已经尝试了所有的组合,但没有发生.即使手动触发FB登录页面[如Meta for developers上所述,在这种情况下,我得到了FB登录屏幕(但标准登录,没有选项来确认发送的数据),我设法接收数据到回调API,但然后应用程序挂起.任何帮助将不胜感激,谢谢!

yhuiod9q

yhuiod9q1#

如果你已经正确配置了autorized重定向URI,并且你的应用程序是活的,请确保使用nodeJs的cors模块不会有cors问题:https://www.npmjs.com/package/cors注意:facebook o auth不会在本地主机上工作,请尝试在免费托管网站上托管你的后端和前端,然后再试一次。

相关问题