node.js - express 4.x 如何在不同js文件中处理router请求
怪我咯
怪我咯 2017-04-17 16:11:40
0
2
304

users.js

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

router.get('/users', function(req, res, next) {
  res.send('Test')
});

module.exports = router;

index.js

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

var users = require('./users')

...

app.js

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

这里我只列出部分代码,但无论我是在index.js中引用user.js还是在app.js中引用,处理/users这个网络请求都是404,所以我想问一下是不是因为一个项目中只能建立一个路由啊,然后另一个问题就是app.use()这个函数的参数分别代表了什么,谢谢各位大神

怪我咯
怪我咯

走同样的路,发现不同的人生

모든 응답(2)
大家讲道理

app.js 등의 엔트리 파일에는 보통 미들웨어 등을 등록하고 앱을 내보낸 뒤 app.get("/ hello 등 사용해야 하는 라우팅 파일에 앱을 직접 도입합니다. ", 함수() {})

use 함수에는 두 개의 매개변수가 있습니다. 첫 번째 매개변수는 일반적으로 경로를 일치시키는 것입니다. 두 번째 기능은 첫 번째 매개변수가 없으면 모든 요청에 ​​적용됩니다.

大家讲道理

질문의 의미를 보면 user.js는 index.js에서 참조됩니다. 통합 라우팅 관리자를 갖고 싶고 index.js가 아니기 때문에 app.js에 모든 경로를 등록하고 싶지 않은 것 같습니다. 따라서 이 아이디어에 따라 index.js의 내용은 다음과 같습니다.
var express = require('express');
var users=require('./users');
var app=express();
app.use('/user',users);
module.exports=app;
그런 다음 동일한 입구 app.js에 이 index.js만 등록하면 사용자 경로를 등록할 필요가 없습니다

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿