如何用Node去寫乙個Web應用框架

2021-10-01 19:33:57 字數 2658 閱讀 2646

http.createserver(function(req,res)).listen(80);大部分的node教程在這裡會告訴你,我們很容易的建立的乙個伺服器。但是在實際使我們通常使用的是express.(f**k,難道node必須要用express嗎?自己實現乙個web應用框架真的很難嗎?)其實並不是。

那麼既然打算自己寫我們首先要知道我們要做哪些事情。 1.路由或者智慧型路由 2.靜態檔案輸出 3.session/cookie 4.模版渲染 5.資料庫處理 6.檔案上傳

路由好高大上的名字,它是幹啥的?url對應具體方法就是它該做的事情。 那麼我們為什麼不讓url對應***檔案的xx方法。 例如:/user/login能不能自動對應到user.js的login方法上。實現起來很難麼?其實只需要幾句**

var fs = require("fs");

module.exports=function(req,res)else if(arr.length==2)

if(arr[1]=="")

if(arr[2]=="")

//end 這段**處理預設行為。可以先忽略

var controller=require('./controller/'+arr[1]);

if(controller[arr[2]])else);

res.end("你訪問的控制器不存在指定方法");

}}else);

res.end("你訪問的路徑不存在");

}}

靜態檔案輸出我們需要乙個庫mime

var url = require("url");

var fs = require("fs");

var mime = require('mime');

/** * [[檢測是否為靜態資源]]

* @param req [[description]]

* @param res [[description]]

* @returns [[description]]

*/module.exports = function (req, res)

var urlpares = url.parse(req.url);

var pathname = urlpares.pathname;

if (fs.existssync(fileurl)) );

return true;

} else

}

這裡稍微有點。但是**量也不多

}這是最簡單的。因為我用 ,自己用自己喜歡的模組元件就行了

這裡可以是用一些orm框架。例如

這裡只需要乙個元件

可以參考我的實現  **比較亂,見諒。

**

如何用Node去寫乙個Web應用框架

第一步,用node輸出乙個hello world 大部分的node教程在這裡會告訴你,我們很容易的建立的乙個伺服器。但是在實際使我們通常使用的是express.f k,難道node必須要用express嗎?自己實現乙個web應用框架真的很難嗎?其實並不是。那麼既然打算自己寫我們首先要知道我們要做哪些...

如何用C 寫乙個類

其實寫乙個類很簡單,但是要寫乙個符合各方面要求的類,卻不是一件容易的事情。下面總結一下需要考慮的一些問題,先把暫時想到的方面記下來,以後想到新的在增加吧。類的生死和初始化 1.copy ctor和copy assignment是不是需要private 單例常用 或者是不是要用private繼承來阻止...

如何用Javascript寫乙個Class?

記得前面某次面試被問到此問題,一直以來因為對js的不重視 一知半解,所以當時就懵了 最近google了下,找到以下幾種寫class的方式 1 js因為不是oo語言,所以沒有class的概念,都是通過prototype的方式實現的。var namedclass class.create getname...