- 攫取静态文件
- MIME类型支撑
- 缓存支撑/控制
- 支撑gzip紧缩
- Range支撑,断点续传
- 宣布为可履行敕令并可今后台运行,可以经由过程npm install -g安装
起首先构建好项目目次,项目目次如下:
- project
- |---bin 敕令行实现放置脚本
- |
- |---public 静态文件办事器默认静态文件夹
- |
- |---src 实现功能的相干代码
- | |
- | |__template 模板文件夹
- | |
- | |__app.js 重要功能文件(main文件)
- | |__config.js 设备文件
- |
- |---package.josn (初始化)
要启动一个办事器,我们须要知道这个办事器的启动时的端标语,在config.js设备一下:
攫取静态文件之前起重要先启动办事器,之后所有的办法都在class Server办法里
- //handlebar 编译模板,获得一个衬着的办法,然后传入实际数据数据就可以获得衬着后的HTML了
- function list() {
- let tmpl = fs.readFileSync(path.resolve(__dirname, 'template', 'list.html'),'utf8');
- return handlebars.compile(tmpl);//进行编译,最后衬着
- }class Server {
- constructor(argv) {
- this.list = list();
- this.config = Object.assign({}, this.config, argv);
- }
- start() {
- let server = http.createServer();//创建办事器
- //当客户端向办事端发出数据的时刻,会出发request事宜
- server.on('request', this.request.bind(this));
- server.listen(this.config.port, () => {//监听端标语
- let url = `http://${this.config.host}:${this.config.port}`;
- debug(`server started at ${chalk.green(url)}`);
- });
- }
- //发送缺点信息,
- sendError(err, req, res) {
- res.statusCode = 500;
- res.end(`${err.toString()}`);
- }}
- module.exports = Server;
攫取静态文件
- 设计思路
- 起首输入一个url时,可能对应办事器上的一个文件,或者对应一个目次,
推荐阅读
AICHAIN创始人段凯:AI+区块链 技术谱系极端的火花碰撞
全平易近充电节 | 3月26日~30日 2000位IT行业拭魅战专家邀请你一路充电进修!作为一门用于模仿、延长和扩大人的智能的理论、办法、技巧及应用体系的新技巧科学,人工智能在历经元年的新一轮火爆之后,应>>>详细阅读
本文标题:静态文件服务器实现的功能
地址:http://www.17bianji.com/lsqh/40859.html
1/2 1