찾다

 >  Q&A  >  본문

node.js - express 4.x 如何在不同js文件中处理router请求

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()这个函数的参数分别代表了什么,谢谢各位大神

怪我咯怪我咯2787일 전315

모든 응답(2)나는 대답할 것이다

  • 大家讲道理

    大家讲道理2017-04-17 16:13:40

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

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

    회신하다
    0
  • 大家讲道理

    大家讲道理2017-04-17 16:13:40

    질문의 의미를 보면 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만 등록하면 사용자 경로를 등록할 필요가 없습니다

    회신하다
    0
  • 취소회신하다