javascript - Expressjs 将用户重定向到错误的路线

标签 javascript node.js express

我有以下注册页面

form(method='post', action='users/register')
    .form-group
        label Name
        input.form-control(name='name', type='text',placeholder='Enter Name')
    .form-group
        label Email
        input.form-control(name='email', type='email',placeholder='Enter Email')
    .form-group
        label Username
        input.form-control(name='username', type='text',placeholder='Username')
    .form-group
        label Password
        input.form-control(name='password', type='password',placeholder='Enter Password')
    .form-group
        label Confirm Password
        input.form-control(name='password2', type='password',placeholder='Confirm Password')
    input.btn.btn-default(name='submit', type='submit',value='Register')

在服务器端,在 users.js 路由中,我有以下代码

router.post('/register', function (req, res, next) {
    // code here
});

现在,当我按下注册按钮时,它会将用户重定向到users/users/register路线。 为什么以及如何解决这个问题?

我正在使用express 4.13.1

最佳答案

您需要在表单操作的开头添加/,否则该操作将相对于当前 url

form(method='post', action='users/register')

或者如果你想正确地做到这一点

form(method='post', action='register')

这样,客户端对更改的敏感度就会降低,例如,如果您想将用户更改为帐户。

关于javascript - Expressjs 将用户重定向到错误的路线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33378885/

相关文章:

javascript - 评论超出范围的正则表达式

javascript - 在 fabric js 中缩放时如何保持 Rect 的圆 Angular

javascript - Node.js - 同步操作中推荐的最长时间

node.js - 服务器之间的队列函数调用由用于 NodeJS 的 Redis 支持

express - 获取 Angular 2 通用启动器以部署到外部服务器主机(谷歌云、Azure 等)的步骤?

javascript - Node JS - 在服务器的来回调用之间保留 session ?

javascript - IE 11 中的 session 存储

javascript - 使用谷歌地图 js 从多边形内的 geojson 获取属性

node.js - 即使在终端关闭后也保持 webpack dev-server 运行

javascript - sailsjs 在 Controller 工作时更新 View