簡體   English   中英

Node.js:Server.js的功能越來越混亂

[英]Node.js: Server.js is getting cluttered with functions

我有一個具有許多功能的server.js

app.post '/record2', (req,res) ->
app.post '/record', (req,res) ->
app.post '/incoming', (req,res) ->
app.post '/call', (req,res) ->

etc..

它開始變得非常混亂。 什么是使server.js更加整潔和易於理解的最佳方法?

謝謝

我認為您正在使用Express? 我過去做過的事情是為相關處理程序創建模塊。 例如,

record-handlers.js

module.exports = {
    record2: function(req, res) { ... },
    record: function(req, res) { ... }
};

然后在server.js

var recordHandlers = require('./record-handlers');

app.post('/record2', recordHandlers.record2);
app.post('/record', recordHandlers.record);
...

*很抱歉將您的Coffeescript轉換為JS-我一點也不了解CS。

正如你可以看到這里 (線231通過235)

switch (config.method) {

    case 'GET': server.get(config.path, internals.preprocessRequest, routes, config.handler, internals.finalizeResponse); break;
    case 'POST': server.post(config.path, internals.preprocessRequest, routes, config.handler, internals.finalizeResponse); break;
    default: process.exit(1); break;
}

路線和處理程序位於不同的模塊中。

另一種策略是使用像這樣的包羅萬象的路線:

/:action

然后使用switch語句根據的值調用所需的函數

req.param('action')

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM