2015-09-13 33 views
0

我是新來expressjs和的NodeJS。我正在開發一個MEAN應用程序,而且我正面臨着爲expressjs設置路線的問題。我在網上閱讀了一些方法,但是如果我使用它們,我的應用程序將變得令人困惑,那麼您能否向我建議一個好的博客,教程或視頻,以便我可以學習設置我的應用程序?Expressjs路由的設置與和的NodeJS MongoDB的

基本上我想要做一些事情是這樣的:

將會有一個文件,該文件都會被調用一次:index.js。我們將需要一個routes.js文件,並在routes.js我們將包括所有我們的服務文件一樣login.js,signup.js等,這樣,當任何URL遇到它,然後該特定代碼執行。流動將是這樣的:

  • index.js
  • routes.js
  • 文件,其中的URL匹配。

我很困惑這個設置。

回答

0

這實際上很簡單。所有的

首先你需要一個文件,讓我們把它app.js -in你的主目錄。

app.js需要所有以包含一個開端是

var express = require('express'); 
var path = require('path'); 
var app = express(); 

// viewed at http://localhost:8080 
app.get('/', function(req, res) { 
    // send file to client 
    res.sendFile(path.join(__dirname + '/index.html')); 
}); 

// code gets executed when you fire a post request at http://localhost:8080/login 
app.post('/login', function(req, res) { 
    // execute code 
    // verify user, authenticate, store user in session/token/cookie 
    // return/send results/status 
}); 

app.post('/signup', function(req, res) { 
    // execute code 
    // create user object, create database record, store user in session/token/cookie 
    // return/send results/status 
}); 

app.listen(8080); 

您可以輕鬆地源路出來,讓你的app.js不會變得過於沉重和你的應用程序更有條理,但代碼上面應該涵蓋你的開始需求。

希望它有幫助!

+0

是的,我已經試過代碼一樣,和它的工作,但現在我怎麼能源路由時,可以請你提供一個簡單的例子也? – user3784294

2

使用中間件,你可以做你想做的,看看下面這個例子

app.js

var routes = require('routes') 
app 
.use("/user",routes.user) 
.use("/other",routes.other) 

路線/ index.js

module.exports = { 
    user : require(./user), 
    other : require(./other) 
} 

路線/ user.js

var router = require("express").Router() 

router.get("/",function (req,res){ 
    // GET /user 
}) 
.post("/",function (req,res){ 
    //POST /user 
}) 

module.exports = router; 

路線/ other.js

var router = require("express").Router() 

router.get("/",function (req,res){ 
    // GET /other 
}) 
.post("/",function (req,res){ 
    //POST /other 
}) 

module.exports = router;