2015-12-07 4 views
0

Я отделил маршруты для отдыха api следующим образом. Есть ли лучший способ организовать маршрутизатор? или способ, которым я занимаюсь, в порядке?частный (организует) экспресс-маршрут

app.js

app.use('/api/auth',auth); 

приложение/контроллеры/авториз/index.js

var express = require('express'), 
router = express.Router(), 
register = require('./register'); 
router.get('/',function(req,res,next){ 
    console.log("api/auth"); 
    res.send('api/auth'); 
    next(); 
}); 
router.use('/register',register); 
module.exports = router; 

приложение/контроллеры/авториз/register.js

var express = require('express'), 
    router = express.Router(), 
    rootPath = require('app-root-path'), 
    User = require(rootPath+'/app/models/user'); 

router.post('/',function(req,res,next){ 
    console.log("api/auth/register"); 
    next(); 
}); 
module.exports = router; 

ответ

0

Вы можете создать routes.js, который имеет все отдельные маршруты. Нечто подобное,

module.exports = function (app) { 
    app.use('/api/route1', require('path/to/route1')); 
    app.use('/api/route2', require('path/to/route2')); 
}; 

оседлать это маршруты в главном app.js. require('path/to/routes')(app);

Shameless вилка примера https://github.com/swarajgiri/express-bootstrap/blob/master/web/routes.js

+0

Спасибо Но я думаю, что ур путь и мой путь очень похожи. Можете ли вы объяснить мне, почему это лучше? – user3882878

+0

Это просто, что он дает вам один файл, где все ваши маршруты можно найти, и он держит ваш «app.js». –

1

Опираясь на swaraj'a ответ, вы должны разделить ваши файлы проекта в две папки Lib и конфигурации. Обратите внимание, что я даю вам общую структуру, которая должна быть настроена в соответствии с вашим проектом.

  • Config

    Он должен содержать все файлы конфигурации для вашего проекта.

  • Lib

    Он должен в основном иметь файлы, такие как controller.js, routes.js, db-ops.js

controller.js contains and exports all functions required for your program logic.

routes.js contains and exports all the routes

db-ops.js intializes db connections and contains functions that define operations on database.

Все эти файлы должны быть указаны в вашем приложении app.js, который будет находиться в корневой директории проектов.

Структура типовой проект должен выглядеть примерно так:

lib 

    -routes.js 

    -controller.js 

    -db-ops.js 

config 

-config.json 

app.js 
+0

Спасибо, у меня есть сценарии, конфиги и каталоги ссылок. – user3882878

Смежные вопросы