nodeJs 服務(wù)器以及中間層實踐(一)

實踐分前端部分和最重要的node服務(wù)器部分。在這里將重點放在nodeJS的代碼上。

想要成為服務(wù)器,就需要能夠處理網(wǎng)絡(luò)請求(http)和對數(shù)據(jù)庫的數(shù)據(jù)作處理。在這次實踐中,node服務(wù)器端主要用到以下技術(shù):?

koa2(處理http請求)、Sequelize(對數(shù)據(jù)庫進(jìn)行映射,即用來對數(shù)據(jù)庫數(shù)據(jù)增刪改查)、?nunjucks(處理頁面)、mysql。

gitee地址:wx-front-with-server: node 前后端實踐,,,可先download下來,按README.md運行一下。

最后的服務(wù)器文件夾結(jié)構(gòu)如下:

文件夾結(jié)構(gòu)圖

前言:跟著廖雪峰老師學(xué)習(xí),一些思想和圖片來自https://www.liaoxuefeng.com。

1.首先看app.js入口文件

可以發(fā)現(xiàn)app.js代碼很少,http的獲取和路由注冊都由2中的app.use(routerController().routes())來完成。這是因為其中進(jìn)行了自動化加載。

先來看看一般我們的操作為:

為了避免越來越多的請求處理會污染入口文件。我們將router處理都寫在router文件夾下。

如:router/indexRoute.js

在這里,請求對應(yīng)的處理我又統(tǒng)一歸在了controller文件夾下:

/controller/indexController.js

無關(guān)代碼先打碼

文件細(xì)分出來了,如何再加載到app.js呢??磖outer.js文件:


最后在app.js中引入router.js,并用app.use(routerController().routes())實現(xiàn)注冊。

*Nunjucks:主要是在templating.js文件中

app.js?中 ,?使用 app.use(templating('views',{}));注冊“views”文件夾下的模板輸出文件。

在路由中可用于模板的跳轉(zhuǎn)和內(nèi)容傳遞,如:ctx.render('index.html',{ data:data });跳轉(zhuǎn)到index.html頁面,且可使用data數(shù)據(jù)。

關(guān)于Nunjucks,看下 https://www.liaoxuefeng.com/wiki/1022910821149312/1100400176397024,比較簡單。

完成koa的部分,我們已經(jīng)可以根據(jù)不同的訪問請求如:localhost:3000/?或 localhost:3000/getAll ,或者提交post請求 /add來獲得服務(wù)器不同的跳轉(zhuǎn)和反饋。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容