express路由要怎么写(这个是直接生成的那个架子)

clipboard.png
我在app.js中如上图,加入了
var fuck = require('./routes/fuck');
app.use('/fuck', fuck);

然后在routes文件夹下添加一个fuck.js
clipboard.png

下面问题来了
clipboard.png
为什么访问不经过fuck.js而是去了index.js? 如果不在index中加入get /fuck就会访问不了

阅读 3.4k
2 个回答

你有点误解了这里路由的写法,
在app.js中

var news = require('./routes/new');
app.use('/news', news);

其实是注册了/news/的路由,而不是/news。

举个例子,
./routes/new 文件下内容

var express = require('express');
var router = express.Router();

/* GET home page. */
router.get('/', function(req, res, next) {
  res.render('index', { title: 'Express' });
});
router.get('/s', function(req, res, next) {
  res.render('index', { title: 's' });
});
module.exports = router;

然后分别访问/news/和/news/s才是对应的结果。

app.use("/fuck",fuck)中你在fuck里面定义的路由
router("/")代表目录 /fuck
router("/fuck")代表 /fuck/fuck
所以 你就没有设置/fuck路径 只设置了/fuck/fuck路径
而你在index.js里面定义/fuck可以显示,因为app.use("/",index)所以这时候有了路径/fuck

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题