nodejs目錄說明,app.js簡單介紹及如何設置app.js啓動項目。css
新建的項目結構應該是這樣node
bin:項目的啓動文件,也能夠放其餘腳本。express
node_modules:用來存放項目的依賴庫。json
public:用來存放靜態文件(css,js,img)。cookie
routes:路由控制器。app
views:視圖目錄(至關於MVC中的V)。工具
app.js:項目入口及程序啓動文件。測試
package.json:包描述文件及開發者信息。ui
-----------------------------------------------其餘,本身建立使用------------------------------url
models:數據模型(至關於MVC中的M)。
controllers:控制器,對請求的操做(至關於MVC中的C)。
tools:工具庫。
config:配置目錄。
test:測試目錄。
README.md:項目說明文件。
app.js文件簡單說明及設置app.js文件爲啓動文件。
//模塊依賴var express = require('express');var path = require('path');var favicon = require('serve-favicon');var logger = require('morgan');var cookieParser = require('cookie-parser');var bodyParser = require('body-parser');var routes = require('./routes/index');var users = require('./routes/users'); //添加,導入http模塊var http=require('http');var app = express(); //設置端口號app.set('port', process.env.PORT || 3000);//視圖引擎設置app.set('views', path.join(__dirname, 'views'));app.set('view engine', 'ejs'); //加載環境變量app.use(logger('dev'));app.use(bodyParser.json());app.use(bodyParser.urlencoded({ extended: false }));app.use(cookieParser());app.use(express.static(path.join(__dirname, 'public'))); //加載路由app.use('/', routes);app.use('/users', users); //啓動及端口http.createServer(app).listen(app.get('port'),function(){ console.log('Express server listening on port ' + app.get('port'));}); //加載錯誤處理解決辦法app.use(function(req, res, next) { var err = new Error('Not Found'); err.status = 404; next(err);});if (app.get('env') === 'development') { app.use(function(err, req, res, next) { res.status(err.status || 500); res.render('error', { message: err.message, error: err }); });}app.use(function(err, req, res, next) { res.status(err.status || 500); res.render('error', { message: err.message, error: {} });});//導出app對象module.exports = app;