缘由
- 在开发vue的过程中,
npm run build
后生成的文件需要在服务端才可以使用 - 本地使用引入
less.min.js
文件来进行调试时,也依赖服务器环境,不要吐槽为什么不用less-loader
...... - 只需要放置一个静态页面的简单服务器。
- etc.
以往使用的是类似基于appche的xammp工具,但xammp有些笨重(200M+),于是选择用nodejs
来实现一个简单的服务,来放置页面。
现状
nodejs本身已经提供了创建服务的方法createServer
,但没有提供页面入口,express
,koa
等框架提供了,但略复杂。
使用方法
因此,写了一个简单的无依赖的服务,用来预览页面。使用方法如下:
git clone https://github.com/sumnow/simple-server.git
node server.js
打开浏览器http://localhost:8080 即可查看效果。
默认服务启动在8080
端口,预览目录下的index.html
,可以修改server.js
来改变端口和页面地址。
var port = 8080;
var pagePath = "/index.html"
原理分析
原理就是Browser向Server请求页面的时候,其实是一个GET
请求,不过是按照不同的Content-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"
例如以上的常见文件格式以及type
,按照type
返回给Browser就可以正常解析啦。
使用体验
目前基于这个建立的自用FileServer运行良好~
项目地址: github.com/sumnow/simp…