Nodejs http-proxy 使用 http-proxy-middleware 动态设置ws目标服务器,代码实例
时间: 2023-05-24 12:02:19 浏览: 611
可以参考以下代码实例:
```javascript
const httpProxy = require('http-proxy');
const proxyMiddleware = require('http-proxy-middleware');
const proxy = httpProxy.createServer();
const middleware = proxyMiddleware('/ws', {
target: 'http://localhost:8000',
ws: true,
changeOrigin: true
});
const server = require('http').createServer((req, res) => {
if (req.url === '/ws') {
middleware(req, res, () => {
proxy.ws(req, res, { target: 'http://localhost:8000' });
});
} else {
// handle requests to other paths
}
});
server.listen(3000);
```
这段代码使用 http-proxy 和 http-proxy-middleware 库创建了一个代理服务器,当收到请求路径为 '/ws' 的 WebSocket 请求时,使用 http-proxy-middleware 库动态设置目标服务器地址,并使用 http-proxy 库进行 WebSocket 代理转发。当收到其他请求时,可以根据自己的需求处理。
阅读全文