Javascript 根据Wordpress验证node.js中的请求
我有一个Wordpress站点和一个node.js应用程序,它们共同构成了我正在构建的web应用程序。我之所以使用Node,是因为socket.io和Wordpress还有很多其他原因。无论哪种方式,我都无法删除wordpress或node 我面临的问题是,在向节点服务器发出请求时,确保通过wordpress登录的用户是有效用户 我应该在wordpress身份验证过程中将会话信息推送到节点服务器,并让它维护自己的会话吗?然后在后续对节点服务器的请求中使用它 我正在努力想办法解决这个问题,希望能得到任何帮助。看看哪一个是node.js的身份验证模块,它提供了不同的身份验证策略(截至目前已有140多个)。幸运的是,有一个OAuth2策略用于针对wordpress进行身份验证。此策略的github页面位于 passport和passport wordpress都可以通过npm软件包管理器安装。之后,如果节点应用程序是应用程序,则可以使用Javascript 根据Wordpress验证node.js中的请求,javascript,php,wordpress,node.js,authentication,Javascript,Php,Wordpress,Node.js,Authentication,我有一个Wordpress站点和一个node.js应用程序,它们共同构成了我正在构建的web应用程序。我之所以使用Node,是因为socket.io和Wordpress还有很多其他原因。无论哪种方式,我都无法删除wordpress或node 我面临的问题是,在向节点服务器发出请求时,确保通过wordpress登录的用户是有效用户 我应该在wordpress身份验证过程中将会话信息推送到节点服务器,并让它维护自己的会话吗?然后在后续对节点服务器的请求中使用它 我正在努力想办法解决这个问题,希望能得
passport.authorize()
路由中间件方法对每个请求进行身份验证。从passport wordpress的文档中:
定义策略
passport.use(new WordpressStrategy({
clientID: CLIENT_ID,
clientSecret: CLIENT_SECRET
},
function(accessToken, refreshToken, profile, done) {
User.findOrCreate({ WordpressId: profile.id }, function (err, user) {
return done(err, user);
});
}
));
通过passport.authorize
在您的路线中使用策略(例如expressjs):
如果您不使用expressjs或不想使用passportjs,请提供更多信息,说明wordpress安装和node.js应用程序如何协同工作,以及您在node.js端使用的框架类型
app.get('/auth/wordpress',
passport.authorize('wordpress'));
app.get('/auth/wordpress/callback',
passport.authorize('wordpress', { failureRedirect: '/login' }),
function(req, res) {
// Successful authentication, redirect home.
res.redirect('/');
});