我有一个使用everyauth 的node.js + express 项目。我正在重新设计路由,我想为登录和注销路径设置多个路由,以便两个 api 版本可以同时共存。
多次调用 postLoginPath 只会使最后一次调用“获胜”。
我需要登录代码来响应“/login”和“/v1/login”。我试图注册备用路由并进行某种服务器端转发,但在“app.routes”的注册路由中找不到“/login”路径(提供给 postLoginPath)。
最终使用了这个:https ://npmjs.org/package/connect-modrewrite
这是我的示例的一些示例代码:
app.use(modRewrite([
'/v1/login /login',
'/v1/logout /logout'
]))
你也可以使用everyauth。
您可以拥有 entryPath 变量的值数组。
everyauth.facebook
.entryPath(['/url/path1','/url/path2'])
.callbackPath('/auth/facebook/callback')
.scope('email')
.fields('id,name,email,picture')
您还可以通过以下方式获取 entryPath 值
everyauth.facebook.entryPath();
希望这会有所帮助。