[英]Express route not found on redirect but route exists
因此,在我的快递服务器中,我已重定向到这样的路线/chat
if (!user) {
res.json(info);
} else {
req.logIn(user, function() {
res.redirect('/chat');
})
}
我像这样把路线
app.use('/chat', require('./routes/chat'));
并在我的路线/聊天文件中
import * as express from 'express';
const router = express.Router();
// Chat Page
router.get('/chat', (req: express.Request, res: express.Response) => res.render('chat'));
module.exports = router;
我要为其重定向到显示React组件的路由,但返回GET http://localhost:3000/chat 404 (Not Found) Error: Request failed with status code 404
如果我仅粘贴路径http://localhost:3000/chat
并转到页面,则组件将显示出来。
因此,我不确定在这种情况下该怎么办以及如何解决?
尝试
router.get('/', (req: express.Request, res: express.Response) => res.render('chat'));
您已经定义了/chat
路径。
通过app.use(),您可以为应用程序对象的实例定义应用程序级中间件。
因此,您可以在chat.js中的/chat
路由上定义一个中间件
app.use('/chat', require('./routes/chat'));
现在在chat.js中,您可以执行以下操作:
router.get('/', (req: express.Request, res: express.Response) => res.render('chat'));
它解析为/ chat。
即使您想将另一条路线定义为/chat/room
也可以在chat.js中进行此操作
router.get('/room', (req: express.Request, res: express.Response) => res.render('chat'));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.