Я новичок в Nodejs, и здесь у меня есть фрагмент кода в app.js:
var config = require('./config')
, express = require('express')
, db = require('./app/lib/db')
, utils = require('./app/lib/utils')(config, db)
var app = express()
http = require('http').createServer(app)
require('./config/express')(app, config)
require('./config/routes')(app, utils, model_list)
http.listen(config.port, function () {
console.log("API running at http://" + config.hostname)
})
А список роутеров api настраивается в файле config/routes
, например:
app.get('/api/' + name + '/:limit([0-9]+)/:page([0-9]+)', ctrls[name].list); // get list with page
app.get('/api/' + name, ctrls[name].list); // get list with default page = 1
app.post('/api/' + name + '/search', ctrls[name].search); // search
app.get('/api/' + name + '/:id([0-9a-f]+)', ctrls[name].get); // get by id
После того, как сервер создан и начинает прослушивать порт конфигурации, каков поток выполнения нового запроса, когда он попадает на сервер? Как сервер может перехватить запрос в app.js
и затем перейти к routes.js
, чтобы направить его в функцию для его обработки?