計劃用node實現了一個後臺框架,相關的代碼可以從GitHub上找到。地址:https://github.com/rookie-mr/node-native.git
預期實現三個關鍵點:
- 路由配置
- 中間件使用
- 基本的服務端渲染
問題記錄:
- 如何將路由分離
將路由配置部分抽離,路由響應以回調函數的形式在服務啓動之前引入綁定
- 動態路由與靜態資源請求如何區分
採用動態路由優先原則,如果配置路由中匹配不到則到靜態資源目錄匹配,仍找不到則響應404
- 服務端渲染思路
讀取預返回的頁面模板,在匹配到自定義的語法是做相應的處理最後將處理後的結果以頁面形式返回
- 長鏈接響應頭
{
"Content-Type": "text/event-stream;charset=utf-8",
"Cache-Control": "no-cache",
"Connection": "keep-alive",
"Access-Control-Allow-Origin": '*',
}
- 上傳文件請求服務端的特殊處理
multipart/form-data時接到的其實是buffer類型的數據而buffer格式的數據,需要用buffer拼接的api來處理,簡單的相加會強制轉化爲字符串導致無法hou'後續進行處理。