nodejs 搭建服务器并且能引进css js img(也就是加载原来页面)

var http = require('http');
var fs = require('fs')
var url = require('url');
var path = require('path')
var mine = require('./mine').type;

http.createServer((req,res)=>{
	if(req.url!='/favicon.ico'){
		var pathname=url.parse(req.url).pathname;
		var realpath=path.join('index',pathname);
		//返回path路径文件扩展名,如果path以 ‘.' 为结尾,将返回 ‘.',如果无扩展名 又 不以'.'结尾,将返回空值。
		var ext=path.extname(realpath)
		ext=ext?ext.slice(1):'unknow';
//		console.log(realpath)
//		console.log(pathname)
//		console.log(ext)
		//测试某个路径下的文件是否存在。
		fs.exists(realpath,(data)=>{
			if(!data){
				res.writeHead(404,{'content-type':'text/plain;charset=utf-8'})
				res.write('页面丢了')
				res.end()
			}else{
				var content=mine[ext]||'unknow';
				fs.readFile(realpath,(err,data)=>{
					res.writeHead(200,{'content-type':content});
					res.write(data);
					res.end()
				})
			}
		})
	}
}).listen(3000)

mine文件

exports.type = {
	"css": "text/css",
	"gif": "image/gif",
	"html": "text/html",
	"ico": "image/x-icon",
	"jpeg": "image/jpeg",
	"jpg": "image/jpeg",
	"js": "text/javascript",
	"json": "application/json",
	"pdf": "application/pdf",
	"png": "image/png",
	"svg": "image/svg+xml",
	"swf": "application/x-shockwave-flash",
	"tiff": "image/tiff",
	"txt": "text/plain",
	"wav": "audio/x-wav",
	"wma": "audio/x-ms-wma",
	"wmv": "video/x-ms-wmv",
	"xml": "text/xml"
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值