static
static 中间件主要用来提供静态资源服务 ,可以设置静态资源的目录 设置响应头 及缓存等等配置,代码如下
function static(root,options = {
}){
let {
dotfiles = "ignore" ,etag=true,lastModified,maxAge=0, setHeaders } = options;
return function(req,req,next){
let {
pathname } = url.parse(req.url,true);
let file = path.join(root,pathname);
let parts = file.split(path.sep);
let isDotFile = parts[parts.length-1][0]==".";
if(isDotFile && dotfiles=="deny"){
//拒绝访问.文件
res.setHeader("Content-Type","text/html");
res.statusCode = 403;
return res.end(http.STATUS_CODES[403]);
}
fs.stat(file,