node代理服务器
1.下载http-proxy
npm install http-proxy --save-dev
2.在项目下面新建一个app.js文件,内容如下:
var http = require('http'), httpProxy = require('http-proxy');
// 新建一个代理 Proxy Server 对象
var proxy = httpProxy.createProxyServer({});
// 捕获异常
proxy.on('error', function (err, req, res) {
res.writeHead(500, {
'Content-Type': 'text/plain'
});
res.end('Something went wrong. And we are reporting a custom error message.');
});
// 在每次请求中,调用 proxy.web(req, res config) 方法进行请求分发
var server =http.createServer(function(req, res) {
// 在这里可以自定义你的路由分发
var host = req.headers.host
switch(host){
case 'www.sage.com':
proxy.web(req, res, { target: 'http://localhost:3000' });
break;
case 'aaa.sage.com':
proxy.web(req, res, { target: 'http://localhost:8080' });
break;
default:
res.writeHead(200, {
'Content-Type': 'text/plain'
});
res.end('Welcome to my server!');
}
});
console.log("listening on port 80")
server.listen(80);
代理服务器是:就是就是通过服务器像其他服务器发送请求;然后经数据在自己的服务器上做代理。最会发送给自己的客户端。