使用 Nodejs / Express 路由路径的问题

Problem using Nodejs / Express routing paths

我是一名资深程序员,但我是 Node 的新手,有一个关于 Express 中的路由路径的简单问题,我无法深究。

我使用 node/express 和 MySql 开发了一个非常简单的应用程序。为了方便起见,我在应用程序中拆分了我的 GET 和 POST 路由。我在应用程序级别使用路由“/posts”,在我的 router() 中使用子路由“/submit-form”,这是 URL 我的表单提交到的。

我显然在做一些愚蠢的事情,因为它不起作用,我收到了 cannot POST 消息。如果我在应用程序和路由器中使用完整的 URL 那么它工作正常所以我认为代码没有任何问题,只是我对 express 如何进行路由的理解。

感谢任何建议。

路由器应与.use() 方法一起使用。因此,您应该在 app.js 文件

中使用以下内容
app.use('/posts', PostRoute)

当嵌套路由器(在 /posts 上)处理请求时,它现在将基于 HTTP 方法应匹配的嵌套路由声明

app.js

const app = express();
app.use('/user', require('./routes/user'))

然后在用户内部;


const router = express.Router({});
router.post('/login', (req,res,next) => {
});
module.exports = router;