日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

最好用的koa2+mysql的RESTful API脚手架,mvc架构,支持node调试,pm2部署。

發布時間:2023/12/13 数据库 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 最好用的koa2+mysql的RESTful API脚手架,mvc架构,支持node调试,pm2部署。 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
#基于webpack構建的?Koa2?restful?API?服務器腳手架 這是一個基于?Koa2?的輕量級?RESTful?API?Server?腳手架,支持?ES6,?支持使用TypeScript編寫。 GIT地址:https://github.com/Allenzihan/koa2-mysql-framework.git

此腳手架只安裝了一些配合koa2使用的必要插件,不僅提供RESTful?API實現,同時也集成了對靜態資源的處理,支持跨越,代理轉發請求等基礎功能。基本上您僅需要關注您的業務開發即可。

腳手架可以根據不同的環境配置不同的信息運行價值,支持開發,測試,生產環境的不同參數配置。

?#數據庫選型MySQL

當然你也可以根據需要配置其他的關系型數據庫,可擴展?sequelize.js?作為?PostgreSQL,?MySQL,?MariaDB,?SQLite,?MSSQL?關系型數據庫的?ORM,本框架使用MVC分成模式實現,事例上通過SQL去實現對數據庫的增、刪、查、改操作。

?##?目錄結構說明

```bash

├──?README.md ├──?.babelrc????????????????????#?Babel?配置文件 ├──?.gitignore??????????????????#?Git?忽略文件列表 ├──?package.json????????????????#?描述文件 ├──?process.config.js???????????#?pm2?部署示例文件 ├──?bin?????????????????????????#?bin入口目錄 │???└──?www?????????????????????#?啟動文件入口 ├──?.vscode?????????????????????#?VS?CODE?調式目錄 │???└──?launch.json?????????????#?調試配置 ├──?config??????????????????????#?配置文件 │???├──?db.config.js????????????#?數據庫配置文件 │???├──?logger.config.js????????#?日志配置文件 │???├──?proxy.config.js?????????#?代理配置文件 │???└──?session.config.js???????#?session配置文件 ├──?src?????????????????????????#?源代碼目錄,編譯后目標源代碼位于?dist?目錄 │???├──?app.js??????????????????#?入口文件 │???├──?files???????????????????#?存放文件目錄 │???├──?middleware??????????????#?中間件目錄 │???????└──?errorRouteCatch.js??#?示例插件?-??router異常處理 │???├──?utils???????????????????#?工具類目錄 │???├──?controllers?????????????#?控制器 │???????└──?usersController.js??#?示例users控制器 │???├──?models??????????????????#?模型層 │???├──?routes??????????????????#?路由層 │?????????└──?users.js??????????#?示例users路由 │???└──?services????????????????#?服務層 │?????????└──?usersService.js???#?示例users服務層 ├──?public??????????????????????#?靜態資源目錄 └──?logs????????????????????????#?日志目錄 ```

?

##?開發使用說明

?

```bash git?clone?https://github.com/Allenzihan/koa2-mysql-framework.git

?

cd?mv?koa2-mysql-framework npm?install npm?run?dev

?

訪問:?http://127.0.0.1:3000/home ``` ##?開發調試說明

?

支持VSCODE調試?Node.js功能,已經配置好,?啟動VSCODE?IDE?上的Debug按鈕即可調試



##?開發環境 npm?run?dev

?

##?PM2?部署說明 提供了?PM2?部署?RESTful?API?Server?的示例配置,位于“process.config.js”文件中。

?

process.config.js?文件提供了兩套環境的配置,分別是測試環境和生產環境的配置

?

啟動測試環境: npm?run?uat

?

如果啟動失敗,使用pm2?直接啟動 pm2?start?process.config.js?--only?uat

?

啟動生產環境: npm?run?prod

?

如果啟動失敗,使用pm2?直接啟動 pm2?start?process.config.js?--only?prod

?

以上使用pm2啟動,需提前安裝好pm2模塊 PM2?配合?Docker?部署說明:?http://pm2.keymetrics.io/docs/usage/docker-pm2-nodejs/

?

###?關于?Token?使用的特別說明(JWT?身份認證)

?

app.use(jwt({? secret:?publicKey.toString() }).unless({ path:?[ /^\/users\/login/, /^\/home/, /^\/assets/ ]? }))

?

在?path?里面的開頭路徑則不進行身份認證,否則都將進行??鑒權。

?

前端處理方案:

?

```javascript import?axios?from?'axios' import?{?getToken?}?from?'./tool'

?

const?DevBaseUrl?=?'http://127.0.0.1:8080' const?ProdBashUrl?=?'https://xxx.xxx'

?

let?config?=?{ baseURL:?process.env.NODE_ENV?!==?'production'???DevBaseUrl?:?ProdBashUrl?//?配置API接口地址 }

?

let?token?=?getToken() if?(token)?{ config.headers?=?{?Authorization:?'Bearer?'?+?token?} }

?

let?request?=?axios.create(config)

?

//?http?request?攔截器 axios.interceptors.request.use( config?=>?{ if?(window)?{ let?token?=?getToken() if?(token)?{ //?判斷是否存在token,如果存在的話,則每個http?header都加上token config.headers.Authorization?=?`Bearer?${token}` } } //?if?(config.method?===?'get')?{ //???config.url?=?config.url?+?'timestamp='?+?Date.now().toString() //?} return?config }, err?=>?{ return?Promise.reject(err) } )

?

export?default?request ```

?

`tool.js`文件

?

```javascript //?寫?cookies export?let?setCookie?=?function?setCookie(name,?value,?time)?{ if?(time)?{ let?strsec?=?getsec(time) let?exp?=?new?Date() exp.setTime(exp.getTime()?+?parseInt(strsec)) document.cookie?= name?+?'='?+?escape(value)?+?';expires='?+?exp.toGMTString() }?else?{ document.cookie?=?name?+?'='?+?escape(value) } }

?

//?讀?cookies export?let?getCookie?=?function(name)?{ let?reg?=?new?RegExp('(^|?)'?+?name?+?'=([^;]*)(;|$)') let?arr?=?document.cookie.match(reg) return?arr???unescape(arr[2])?:?null }

?

//?刪?cookies export?let?delCookie?=?function(name)?{ var?exp?=?new?Date() exp.setTime(exp.getTime()?-?1) var?cval?=?getCookie(name) if?(cval?!=?null)?{ document.cookie?=?name?+?'='?+?cval?+?';expires='?+?exp.toGMTString() } }

?

//?獲取Token export?let?getToken?=?function()?{ if?(window.sessionStorage?&&?window.sessionStorage.Bearer)?{ return?window.sessionStorage.Bearer }?else?if?(window.localStorage?&&?window.localStorage.Bearer)?{ return?window.localStorage.Bearer }?else?if?(window.document.cookie)?{ return?getCookie('Bearer') } }

?

//?設置Token export?let?setToken?=?function(token,?rememberTime)?{ if?(window.sessionStorage)?{ window.sessionStorage.Bearer?=?token }

?

if?((rememberTime?&&?window.localStorage)?||?!window.sessionStorage)?{ window.localStorage.Bearer?=?token }

?

if?( window.document.cookie?&& !window.sessionStorage?&& !window.localStorage )?{ if?(rememberTime)?{ setCookie('Bearer',?token,?rememberTime) }?else?{ setCookie('Bearer',?token) } } }

?

//?刪除Token export?let?delToken?=?function()?{ if?(window.sessionStorage?&&?window.sessionStorage.Bearer)?{ window.sessionStorage.removeItem('Bearer') }

?

if?(window.localStorage?&&?window.localStorage.Bearer)?{ window.localStorage.removeItem('Bearer') }

?

if?(window.document.cookie)?{ delCookie('Bearer') } } ```

?

大概原理: 通過某個?API(通常是登錄?API)獲取成功后的?Token,存于本地,然后每次請求的時候在?Header?帶上`Authorization:?"Bearer?"?+?token`,通常情況下無需擔心本地?Token?被破解。 GIT地址:? https://github.com/Allenzihan/koa2-mysql-framework.git

?

轉載于:https://www.cnblogs.com/allen-tech/p/11382443.html

總結

以上是生活随笔為你收集整理的最好用的koa2+mysql的RESTful API脚手架,mvc架构,支持node调试,pm2部署。的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 欧美经典一区二区 | 青青久在线视频 | 精品国产伦一区二区三区 | 免费在线激情视频 | 久久亚洲高清 | 波多野结衣亚洲天堂 | 肉视频在线观看 | 都市激情第一页 | 欧美大片免费观看网址 | 偷看洗澡一二三区美女 | 免费看黄色三级三级 | 又黄又骚的视频 | 日韩在线视频网址 | 三级做爰在线观看视频 | 色综合成人 | 国产精品少妇 | 日韩av一区二区三区在线观看 | 亚洲日本在线观看视频 | 9.1在线观看免费 | 日韩精品网址 | 久久麻豆视频 | 少妇真人直播免费视频 | www.com毛片 | 午夜一区不卡 | 天天添天天射 | 美女视频黄的免费 | 国产精品揄拍100视频 | 中文在线√天堂 | 很黄很黄的网站 | 久久精品高清 | 影音先锋丝袜制服 | 激情小说图片视频 | 91蝌蚪在线| 中国字幕一色哟哟 | jizz中文字幕 | 两性视频久久 | 日韩精品美女 | 大黄一级片 | 欧美群妇大交乱 | 蜜臀尤物一区二区三区直播 | 国产黄色在线观看 | 中文字幕mv | 在线免费不卡视频 | 国产高清免费 | 美女视频黄a视频全免费观看 | www.夜色| 黑人巨大精品欧美黑寡妇 | 亚洲一区视频在线播放 | 91看片网站| 日韩高清网站 | 色综合中文网 | 久久精品99久久 | 91蝌蚪少妇 | 精品无码人妻一区二区三 | av影视天堂 | 国产麻豆精品在线观看 | 日韩美女黄色片 | 久操社区 | 成人免费视频国产在线观看 | 国产婷婷色一区二区三区 | 天堂av免费观看 | 亚洲成av人片一区二区梦乃 | 欧美午夜在线视频 | 一级aaaa毛片 | 免费国产视频在线观看 | 好吊一区二区三区 | 精品影院| 播放美国生活大片 | 狠狠躁18三区二区一区 | 内射毛片内射国产夫妻 | 青草久久网 | 最好看的中文字幕国语电影mv | 欧美在线精品一区 | 欧美精品免费一区二区 | 五月婷婷基地 | 日韩视频免费观看高清完整版 | 中国av片| 亚洲色图五月天 | 日日草夜夜草 | 极品尤物一区二区 | 精品一区二区久久久久久按摩 | 欧美日韩极品 | 欧美你懂得| 日本欧美久久久久免费播放网 | 国产大片一区二区 | 欧美色图1| av综合网站 | 中文字幕无码人妻少妇免费 | 欧美精品一区二区在线播放 | 亚洲乱子伦 | 黄色免费在线视频 | 波多野结衣在线观看一区二区三区 | 91色精品 | 粉嫩久久99精品久久久久久夜 | 亚洲最大免费视频 | 欧美一区二区在线看 | 亚洲一区二区久久久 | 欧美日韩一区二区三区在线 | 精品人妻一区二区三区四区不卡 |