本文將介紹
1棍鳖、如何快速地搭建一個(gè)簡單的服務(wù)端渣叛,提供App和web可以訪問的接口
2粘秆、如何將服務(wù)器部署到LeanCloud上
一粹胯、創(chuàng)建項(xiàng)目
首先你需要安裝NodeJS環(huán)境 這里不再做介紹
1.安裝Express
sudo npm install express -g
sudo npm install express-generator -g
2.初始化項(xiàng)目
cd /Users/SPRINT/Desktop 進(jìn)入桌面
express 項(xiàng)目名稱
cd 項(xiàng)目名稱
npm install
回到桌面 將看到一個(gè)wuappserver目錄 這里使用Sublime Text打開
/bin:用來啟動(dòng)應(yīng)用(服務(wù)器)
/public: 存放靜態(tài)資源目錄
/routes:路由用于確定應(yīng)用程序如何響應(yīng)對(duì)特定端點(diǎn)的客戶機(jī)請(qǐng)求特幔,包含一個(gè) URI(或路徑)和一個(gè)特定的 HTTP 請(qǐng)求方法(GET咨演、POST 等)。每個(gè)路由可以具有一個(gè)或多個(gè)處理程序函數(shù)蚯斯,這些函數(shù)在路由匹配時(shí)執(zhí)行薄风。
/views: 模板文件所在目錄 文件格式為.jade
目錄app.js程序main文件 這個(gè)是服務(wù)器啟動(dòng)的入口
二、啟動(dòng)本地服務(wù)
npm start //啟動(dòng)服務(wù)器
啟動(dòng)完成后終端將輸出 node ./bin/www
在瀏覽器中訪問 http://localhost:3000/
三拍嵌、定義接口
如果我們想要實(shí)現(xiàn)一個(gè)獲取用戶信息接口該怎么寫呢遭赂?
很簡單在 routes目錄下創(chuàng)建一個(gè)user.js文件內(nèi)容如下:
定義一個(gè)User模型
function User() {
this.name;
this.city;
this.age;
}
module.exports = User;
切換到users.js文件
在文件頂部添加
var URL = require('url');
var User = require('./user');
并繼續(xù)添加如下內(nèi)容:
// 返回對(duì)象
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 = "羅子君";
user.age = "37";
user.city = "上海市";
}else{
user.name = "賀函";
user.age = "36";
user.city = "上海市";
}
var response = {status:1,data:user};
res.send(JSON.stringify(response));
});
// 返回簡單的 JSON
router.get('/getAll', function(req, res, next) {
var data = {
"靳東":"賀涵", "馬伊琍":"羅子君", "袁泉":"唐晶", "雷佳音":"陳俊生 ", "吳越":"凌玲", "許娣":"薛甄珠", "張齡心":"羅子群", "鄔君梅":"吳大娘", "欒元暉":"白光", "鄭羅茜":"薇薇安", "啜妮":"洛洛", "梅婷":"卓漸清前女友", "譚凱":"Adom", "孔維":"單身女人", "張棪琰":"蘇曼殊", "侯巖松":"老金", "魏之皓":"平兒", "王天澤":"冷佳清", "于明加":"安琪兒CEO", "任東霖":"李睿", "張衣":"羅平", "黃瀾":"M女士", "陳道明":"卓漸清"
}
var response = {status:1,data:data};
res.send(JSON.stringify(response));
});
停止服務(wù)器 重新start服務(wù)器即可直接訪問
調(diào)用方式
http://localhost:3000/users/getUserInfo?id=1
或者
http://localhost:3000/users/getUserInfo?id=2
四、部署到LeanCloud
1横辆、LeanCloud 對(duì)于每個(gè)應(yīng)用都默認(rèn)贈(zèng)送一個(gè)「基本資源 0.5 CPU + 256 MB 內(nèi)存」的體驗(yàn)實(shí)例撇他,可以免費(fèi)使用,供開發(fā)者學(xué)習(xí)和測試云引擎龄糊,因此我們選擇LeanCloud逆粹。
2、LeanCloud部署是需要設(shè)置代碼庫炫惩,因此我們需要先把剛才創(chuàng)建的項(xiàng)目提交到Git倉庫僻弹,我們選擇 github倉庫
1、GitHub 新建倉庫
創(chuàng)建成功
復(fù)制倉庫地址他嚷,在終端執(zhí)行下面命令蹋绽,將代碼clone到本地
cd desktop
git clone 倉庫地址
桌面上會(huì)多一個(gè)名為 webserver 的文件夾芭毙,將第一步創(chuàng)建項(xiàng)目文件夾下的所有文件復(fù)制到 webserver 文件夾下,執(zhí)行以下命令提交到倉庫
git add .
git commit -m'info'
git push
這時(shí)再回到GitHub卸耘,會(huì)發(fā)現(xiàn)剛才新建的倉庫里面已經(jīng)有我們創(chuàng)建的項(xiàng)目了
2退敦、設(shè)置LeanCloud
- 注冊(cè)LeanCloud,新建一個(gè)應(yīng)用
- 設(shè)置
設(shè)置git倉庫地址
設(shè)置主機(jī)域名
- 部署服務(wù)
部署成功后蚣抗,將看到實(shí)例狀態(tài) “運(yùn)行中”侈百,至此,服務(wù)器已經(jīng)啟動(dòng)翰铡,服務(wù)器的地址钝域,就是上一步設(shè)置的主機(jī)域名!
五锭魔、測試接口
利用Postman模擬App發(fā)送Get請(qǐng)求