成人怡红院-成人怡红院视频在线观看-成人影视大全-成人影院203nnxyz-美女毛片在线看-美女免费黄

站長資訊網
最全最豐富的資訊網站

用Node.js如何快速構建一個API服務器?

用Node.js如何快速構建一個API服務器?

Node.js 對初學者來說可能是令人望而卻步的,其靈活的結構和缺乏嚴格的規范使它看起來很復雜。【視頻教程推薦:node js教程 】

本教程是 Node.js,Express 框架和 MongoDB 的快速指南,重點介紹基本的 REST 路由和基本的數據庫交互。你將構建一個簡單的 API 框架模版,然后可以將其用作任何應用。

本教程適用于:你應該對 REST API 和 CRUD 操作有基本的了解,還有基本的 JavaScript 知識。我用的是 ES6(主要是箭頭函數),但并不是很復雜。

在本教程中,我們將為創建一個網絡筆記應用的后端骨架 —— 類似于Google Keep,能夠執行所有的四個CRUD操作:創建、讀取、更新和刪除。

配置

如果你沒有安裝Node,請參閱此處。

創建一個新目錄,運行 npm init,然后按照提示操作,把你的應用程序命名為“notable”(或者你可能喜歡的其他名字)。

npm init

一旦完成,在你的目錄中會有一個 package.json 文件。你可以開始安裝項目所需的依賴項了。

我們將使用 Express 作為自己的框架,MongoDB 作為數據庫,還有一個名為 body-parser 的包來幫助處理 JSON 請求。

npm install --save express mongodb@2.2.16 body-parser

我還強烈建議將 Nodemon 安裝為 dev 依賴項。這是一個非常簡單的小包,可在文件被更改時自動重啟服務器。

如果你運行:

npm install --save-dev nodemon

然后將以下腳本添加到 package.json

// package.json   "scripts": {     "dev": "nodemon server.js"   },

完整的 package.json 應如下所示:

// package.json {   "name": "notable",   "version": "1.0.0",   "description": "",   "main": "server.js",   "scripts": {     "dev": "nodemon server.js"   },   "author": "",   "license": "ISC",   "dependencies": {     "body-parser": "^1.15.2",     "express": "^4.14.0",     "mongodb": "^2.2.16"   },   "devDependencies": {     "nodemon": "^1.11.0"   } }

現在,你可以創建 server.js 文件并構建 API 了。

我們的服務器

首先導入 server.js 中的所有依賴項。

// server.js const express        = require('express'); const MongoClient    = require('mongodb').MongoClient; const bodyParser     = require('body-parser'); const app            = express();

我們將使用 MongoClient 與數據庫進行交互。還會將應用初始化為 Express 框架的實例。

最后一件事就是告訴你的程序開始監聽請求。

你可以指定一個端口,并像這樣開始監聽:

// server.js const port = 8000; app.listen(port, () => {   console.log('We are live on ' + port); });

現在,如果你運行 npm run dev(或 node server.js,如果你沒有安裝 Nodemon 的話),應該在終端中看到“We are live on port 8000”的提示。

你的服務器已經啟動了。但它現在還什么也做不了。

接下來讓我們解決這個問題。

CRUD 路由

對于本例,你要構建4條路由; 創建筆記,閱讀筆記,更新筆記和刪除筆記。

這將使你了解如何使用 Node 構建幾乎所有的基本路由。

但是,要測試你的API,還需要模仿客戶端發出請求。為此,我們將使用名為 Postman 的優秀應用。它允許你使用自定義的頭和參數進行簡單的 HTTP 請求。

安裝Postman,讓我們開始設置路由。

項目結構

大多數 Node.js 教程(以及許多真實的案例)都將所有路由放在一個很大的 routes.js 文件中。這讓我有點不舒服。相比之下,將文件拆到為單獨的文件夾可以提高可讀性,并使大型應用更易于管理。

雖然我們現在做的不是大型應用,但仍然可以這樣做。創建以下目錄:一個 app 文件夾,里面有一個routes文件夾,routes 里面有 index.jsnote_routes.js 文件。

mkdir app cd app mkdir routes cd routes touch index.js touch note_routes.js

對于你的簡單小程序來說,這些目錄可能看起來有些過分,但從一開始就做好總是有意義的。

你的第一個路由

讓我們從 CRUD 中的 C 開始。你將會如何創建一個筆記?

那么,在你開始之前,必須先要打好基礎。在Express中,路由包含在一個函數中,該函數將 Express 實例和數據庫作為參數。

像這樣:

// routes/note_routes.js module.exports = function(app, db) { };

然后,你可以通過 index.js 導出此函數:

// routes/index.js const noteRoutes = require('./note_routes'); module.exports = function(app, db) {   noteRoutes(app, db);   // Other route groups could go here, in the future };

然后導入它以便在 server.js 中使用:

// server.js const express        = require('express'); const MongoClient    = require('mongodb').MongoClient; const bodyParser     = require('body-parser'); const app            = express(); const port = 8000; require('./app/routes')(app, {}); app.listen(port, () => {   console.log('We are live on ' + port); });

請注意,由于還沒有設置數據庫,因此只需傳入一個空對象。

好的,現在你可以制作自己的 CREATE 路由了。

語法很簡單:

// note_routes.js module.exports = function(app, db) {   app.post('/notes', (req, res) => {     // You'll create your note here.     res.send('Hello')   }); };

當應用程序收到對 '/ notes' 路徑的 post 請求時,它將執行回調內的代碼 —— request 對象(包含請求的參數或JSON)和 response 對象。

你可以使用 Postman 將 POST 請求發送到 localhost:8000/notes 來測試。

用Node.js如何快速構建一個API服務器?

你應該得到回復:'Hello'。

太好了!你創建了第一個真正的路由。

下一步是在你的請求中添加一些參數并在 API 中處理它們,最后添加到你的數據庫中。

請求參數

在 Postman 中,在選擇 x-www-form-urlencoded 單選按鈕后,轉到 Body 選項卡并添加一些鍵值對。

這會將編碼后的表單數據添加到你的請求中,你可以使用 API ??處理該請求。

用Node.js如何快速構建一個API服務器?

你可以去嘗試

贊(0)
分享到: 更多 (0)
?
網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
白丝老师用腿夹得我好爽的视频| FREE俄罗斯免费视频| 18禁又污又黄又爽的网站| 97SE狠狠狠狠狼亚洲综合网| WWW久久无码天堂MV| 处破痛哭A√18成年片免| 国产成人三级在线视频网站观看| 国产香蕉尹人在线视频你懂的 | 欧美日韩人妻一区二区三区| 欧洲精品免费一区二区三区| 少妇人妻偷人精品一区二区| 亚洲AV无码1区2区久久| 精品久久久久久久久久久AⅤ| 九九视频麻婆豆腐在线观看| 免费全部高H视频无码| 日本乱熟人妻精品中文字幕| 玩弄放荡人妇系列AV在线网站| 亚洲成AV人片在线观看无APP| 曰韩无码AV一区二区免费| OM老熟妇DHXⅩXXX| 国产精品VⅠDEOXXXX国产| 黑人巨大精品欧美一区二区免费| 久久一本精品久久精品66| 欧美精品少妇XXXXⅩ另类| 熟女丝袜香蕉双人女高潮| 亚洲国产成人五月综合网| 中文字幕精品无码一区二区三区| 成码无人AV片在线电影网站| 国产亚洲精品A在线观看APP| 林静公交车被做到高C的原因| 日韩精品无码区免费专区| 亚洲AV无码国产综合专区| 最新版天堂中文在线官网| 成熟交BGMBGMBGM在线| 国色天香在线观看全集免费播放| 男女一边摸一边做爽爽| 特大肥女BBWASS| 伊人久久大香线蕉亚洲| 粉嫩粉嫩的18在线免免费观看| 黑人大战亚洲人精品一区| 欧美XXXX做受欧美GAY| 天天躁恨恨躁夜躁2020| 要灬要灬再深点受不了好舒服 | AⅤ精品一区二区三区| 国产精品久久久久久无码| 老狼一区忘忧草欢迎您大豆男男 | 免费人成在线观看网站品善网| 视频二区精品中文字幕| 野花免费观看高清电视| 成在人线AV无码免费看 | 国产精品无码专区在线播放| 美乳丰满人妻无码视频| 无码人妻一区二区三区四区AV| 一区二区国产高清视频在线| 国产成人精品无码片区在线观看| 军人暴力性强迫RAPE| 无码AⅤ最新AV无码专区| 性欧美乱妇COME | 欧美性猛交XXXX乱大交3| 西西人体444WWW大胆无码视| 小荡货奶真大水真多紧视频| 中文字幕在线亚洲日韩6页| 国产乱人伦偷精品视频色欲| 欧美成人精品第一区二区三区| 亚洲 欧洲 小说 自拍| JIZZ成熟丰满韩国女人.| 精品久久久久香蕉网| 日韩一区二区三区免费高清 | 无人区码一码二码三码医生系列| 4虎CVT4WD| 精品VPSWINDOWS妇女| 撒尿BBWBBW| 最新中文字幕AV无码不卡| 黑料不打烊隐藏入口GITHUB| 搡老女人老熟妇HHD| 1000部拍拍拍18勿入免费视频下载| 国产在线精品国自产拍影院同性| 漂亮人妻洗澡被公强BD| 野花影视视频在线观看免费| 国产日韩AⅤ精品一区二区| 日本边添边摸边做边爱边| 又大又黄又爽视频一区二区| 国内精品伊人久久久久777| 日产乱码一二三区别免费一| 中文字幕乱偷无码动漫AV| 好爽好大再深点高H免费观看| 日韩乱码人妻无码中文字幕久久| 在线精品动漫一区二区无码| 黑人巨大精品人妻一区二区| 太深太粗太大太猛太爽了视频| EEUSS影院鲁丝片A无码| 久久综合九色综合欧美98| 亚洲AV永久无码精品桃花岛知道 | 亚洲VA综合VA国产产VA中| 公交车后车座的疯狂的做小| 欧美日韩人妻精品| 在线天堂おっさんとわたし| 精品人体无码一区二区三区| 性色AV性色生活片| 国产AⅤ无码旗袍丝袜美腿| 翘臀后进呻吟喷水的少妇| 主人 跪好 知道错了吗| 久久精品无码一区二区无码| 亚洲VA无码专区国产乱码| 国产看黄网站又黄又爽又色| 少妇无码AV无码一区| 边做边爱完整版免费视频播放百度| 妺妺窝人体色WWW看美女图片| 野花香电视剧全集免费观看| 精品久久久久久久久午夜福利 | 日韩AV高清在线观看| 99久久人妻无码精品系列蜜桃| 麻豆果冻传媒精品国产AV| 亚洲熟妇无码一区二区三区导航| 狠狠噜天天噜日日噜| 亚洲AV涩涩涩成人网站| 国产美女裸体丝袜喷水视频| 无码VA在线观看| 国产成人无码精品久久二区三区| 色噜噜久久综合伊人一本| 成人欧美一区二区三区1314| 人与牲动ZZZXXXⅩ0000| 暗交小拗女一区二区| 秋霞电影院yy2933| JAVAPARSERHD夫妻| 秋霞电影院yy2933| 爱情岛论坛线路一官方网站 | 女人高潮娇喘抽搐喷水动态视频| 中文亚洲AV片不卡在线观看| 国产精品国产AV片国产| 丝瓜草莓秋葵污旧版APP无限看| 饭桌上故意张开腿让公H| 日韩av在线一区二区| 成人区人妻精品一区二| 揉着我的奶从后面进去| 成熟交BGMBGMBGM的价格| 天美传媒MV免费观看软件特色| 国产7色在线 | 国产| 天天躁夜夜躁很很躁| 国产精品美女被操| 亚洲AV日韩AV奶水无码| 狠狠色成人一区二区三区| 亚洲日本VA中文字幕| 老肥熟妇丰满大屁股在线播放| 中文字字幕在线中文乱码| 男孩子都会夹住女孩子头发| JAPANESE熟睡侵犯| 日本久久久久久久久久加勒比| 丰满的继牳3中文字幕系列| 忘忧草在线播放WWW网| 国产亚洲精品在AV| 亚洲精品无码久久| 久久丫精品国产亚洲AV不卡| 137肉体摄影日本裸交| 强行糟蹋人妻HD中文字幕| 纯肉高H爽文粗大| 无码专区6080YY电影| 极品少妇被猛得白浆直流草莓视频| 亚洲无亚洲人成网站77777| 老狼一区忘忧草欢迎您大豆男男 | 国产精品沙发系列| 亚洲狠狠色丁香婷婷综合| 两个黑人大战嫩白金发美女| JAPANRCEP老熟妇乱子伦视频| 少妇被粗大的猛烈进出96影院| 国产精品无码A∨精品影院| 亚洲国产成人精品无码区在线播放| 久久青草费线频观看| BBBBBBBBB老妇人BBB| 婷婷伊人久久大香线蕉AV| 极限少妇人妻无石久久电影网| 中日双语字幕高清在线观看| 人妻少妇(11一32)章| 99久久无色码中文字幕人妻| 日本精品少妇一区二区三区| 国产精品亚洲LV粉色| 亚洲中文字幕无码AV永久| 欧美黑人性爱视频| 高潮毛片无遮挡高清免费| 亚洲成在人线AV品善网好看| 免费观看羞羞的事情网站| 大香伊蕉人在播放2019| 亚洲AV中文无码字幕色本草| 免费AV一区二区三区| 放荡娇妻张开腿任人玩H| 亚洲国产精品久久精品成人网站| 免费无码AV一区二区三区| 妇女强高潮18ⅩXXX| 亚洲人成绝费网站色WWW吃脚| 欧码的XL是亚洲码| 国产AV无码专区亚洲AⅤ蜜芽| 亚洲嫩草AV永久无码精品天堂| 欧美成人国产精品视频| 国产精品久久久久久福利| 一区二区三区国产精品保安| 日韩无码2021| 久久精品无码午夜福利理论片| 成人全部免费的A毛片在线看| 亚洲精品成人片在线播放| 人妻被按摩到潮喷中文不卡|