概述
nodejs写静态资源服务器+后台代理
- 思路
- 主要模块
- demo
思路
解析请求的url,通过fs模块读取本地资源,返回给浏览器
主要模块
http 模块,创建http服务
fs 文件模块,用于读取本地静态文件
url 模块,解析url
path模块,拼接路径(可根据不同操作系统,输出不同结果)
http-proxy,用于后台的代理
demo
const http = require('http'),
fs = require('fs'),
url = require('url'),
path = require('path'),
proxy = require('http-proxy');
const port = process.env.PORT || 3000;
const server = http.createServer((req, res) => {
// 获取解析后的url对象
const pathObj = url.parse(req.url, true);
// 后台api
if (pathObj.pathname === '/barrage') {
proxyServer.web(req, res, { target: 'http://127.0.0.1:8080' });
return;
}
// 资源路径
const filePath = path.join(__dirname, pathObj.pathname);
console.log(filePath);
fs.readFile(filePath, (err, file) => {
if (err) {
console.error('404');
res.end('<h1>404 not found</h1>');
} else {
console.log('success');
// 二进制
res.write(file, 'binary');
res.end();
}
});
});
server.listen(port);
console.log(`server start on ${port}`);
最后
以上就是大气夏天为你收集整理的nodejs写静态资源服务器+后台代理的全部内容,希望文章能够帮你解决nodejs写静态资源服务器+后台代理所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复