中介軟體路由
控制器服務
npm
install egg --type = ******
可選的骨架型別
****** - 簡單的egg應用程式骨架
empty - 空的egg應用程式骨架
plugin - egg plugin骨架
framework - egg framework骨架
用於配置 url 路由規則
用於解析使用者的輸入,處理後返回相應的結果
用於編寫業務邏輯層
用於編寫中介軟體
用於放置靜態資源
用於框架的擴充套件
`config/config..js`
用於編寫配置檔案
`config/plugin.js`
用於配置需要載入的外掛程式
`test/**`
用於單元測試
用於自定義啟動時的初始化工作
用於定時任務
用於放置模板檔案
用於放置領域模型
全域性應用物件,可以將一些全域性的方法和物件掛載到上面,
事件包含的宣告週期方法有:
生命週期方法
說明configdidload
配置檔案載入完成
configwillload
配置檔案即將載入,修改配置檔案的最終時機
didload
檔案載入完成
willready
外掛程式啟動完畢
didready
worker準備就緒
serverdidready
應用啟動完成
beforeclose
應用即將關閉
context是請求級別的物件,收到的使用者請求會例項化乙個context物件,該物件封裝了使用者的請求資訊,框架將所有的service掛載在context例項上。
獲取方式
module.
exports);
}獲取方式
helper:提供一些實用的utility函式,可以通過ctx.helper獲取請求的helper例項
可以通過框架擴充套件的形式自定義helper的方法。
logger: 包含以下幾種方法
logger.
debug()
; logger.
info()
; logger.
warn()
; logger.
error()
;
(1)寫法
const isjson =
require
('koa-is-json');
const zlib =
require
('zlib');
module.
exports
= options =>;}
;(2)配置
乙個中介軟體接收兩個引數:
(1)在應用中使用
module.exports =,}
;
(2)在框架和外掛程式中使用
不支援在config.default.js中配置
module.
exports
;module.
exports=(
)=>};
(3)在router中使用中介軟體
module.
exports);
get(
'/needgzip';}
;
框架和外掛程式載入的中介軟體會在應用層配置的中介軟體之前,框架默的中介軟體不可被應用層中介軟體覆蓋,若有同名會報錯。
module.exports =,}
;
module.exports =,}
;
router.
verb
('path-match'
;router.
verb
('router-name'
,'path-match'
;router.
verb
('path-match'
, middleware1,
...;
router.
verb
('router-name'
,'path-match'
, middleware1,
...;
(1)query
module.
exports
;exports.index =
async ctx =>`;
};// curl
(2)params
module.
exports
;exports.info =
async ctx =>, $
`;};
// curl
(3)複雜引數
module.
exports
;exports.detail =
async ctx =>`;
};// curl
(4)表單
module.
exports
;exports.post =
async ctx =>`;
};表單校驗
module.
exports
;const createrule =
, password:,}
;exports.create =
async ctx =>
;controller主要對使用者的請求引數進行處理(校驗和轉換),然後呼叫對應的service方法處理業務,得到業務結果後封裝並返回。
專案中的controller類繼承於egg.controller,有以下屬性掛在this上
service可以進行複雜的資料處理,比如資料庫資訊獲取後的規則計算,第三方服務資訊的呼叫等。
const service =
require
('egg'
).service;
class
userservice
extends
service
}module.exports = userservice;
sevice層提供的屬性
其中this.ctx包含以下屬性和方法
egg直接取req Egg伺服器基礎功能
1.框架約定目錄規則 1.5 config config.js 用於編寫配置檔案 1.6 config plugin.js 用於配置需要載入的外掛程式 2.內建物件 2.request response 可以在 context 的例項上獲取到當前請求的 request ctx.request 和 r...
一 基礎功能篇
面板模組功能 一 elements 在element中主要分兩塊大的部分 a html結構面板 b 操作dom樣式 結構 時間的顯示面板 1.在a中,每當你的滑鼠移動到任何乙個元素上,對應的html檢視中會給該元素藍色的背景。2.如果你單擊選中乙個元素,在a部分的底部,會顯示該元素在html結構中的...
SciPy 基礎功能
預設情況下,所有numpy函式都可以在scipy 命名空間 中使用。當匯入scipy時,不需要顯式地匯入numpy函式。numpy的主要物件是n次多維陣列ndarray,scipy構建在ndarray陣列之上,ndarray是儲存單一資料型別的多維陣列。在numpy中,維度稱為軸,座標軸的數量稱為秩...