本文主要摘自使用 NodeJS+Express 開發服務端
github代碼地址:demohtml
npm install express -g npm install express-generator -g
cd 你的文件目錄 express 項目名稱(我設爲APIServer)
獲得的目錄結構以下github
在終端最後的位置輸出了以下兩個命令express
install dependencies: $ cd APIServer && npm install //進入項目並安裝環境 run the app: $ DEBUG=apiserver:* npm start //啓動服務器
npm start
+在瀏覽器中訪問http://localhost:3000/npm
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 app = express(); ///=======路由信息 (接口地址)開始 存放在./routes目錄下===========// var routes = require('./routes/index');//home page接口 var users = require('./routes/users'); //用戶接口 app.use('/', routes); //在app中註冊routes該接口 app.use('/users', users);//在app中註冊users接口 ///=======路由信息 (接口地址 介紹===========// ///=======模板 開始===========// // view engine setup app.set('views', path.join(__dirname, 'views')); app.set('view engine', 'jade'); ///=======模板 結束===========//
var express = require('express'); var router = express.Router(); //定義一個get請求 path爲根目錄 /* GET home page. */ router.get('/', function(req, res, next) { res.render('index', { title: 'Express' }); }); module.exports = router;
定義一個路由的基本格式爲api
app.METHOD(PATH, HANDLER)
其中瀏覽器
function User(){ this.name; this.city; this.age; } module.exports = User;
var URL = require('url'); //請求url模塊 var User = require('./user'); //引入user.js
並繼續添加服務器
router.get('/getUserInfo',function(req,res,next){ var user = new User(); var params = URL.parse(req.url,true).query; if(params.id == '1'){ user.name = "ligh"; user.age = "1"; user.city = "北京市"; }else{ user.name = "SPTING"; user.age = "1"; user.city = "杭州市"; } var response = {status:1,data:user}; res.send(JSON.stringify(response)); })
其中cookie
獲取url參數 依賴於url模塊 使用前須要使用 require('url') var params = URL.parse(req.url, true).query;
因爲users.js路由信息已經在app.js註冊
中止服務器 從新start服務器便可直接訪問
注意咱們訪問的方式爲users/getUserInfo?id=1 而不是基於根
緣由是咱們在app.js註冊方式爲app.use('/users', users);
咱們能夠利用這種方式 開發模塊功能 好比 你有另一個模塊爲msg
咱們註冊爲:app.use('/msgs', msgs);
調用方式爲
http://localhost:3000/msgs/getUserMsgs?id=1