比如访问127.0.0.1:8080/url,实际上访问的是 www.abc.com/api/url
使用流,管道实现么?
可以直接把tcp流导过去,像这样
#!/usr/bin/env node const net = require('net') const stream = require('stream') const transform = stream.Transform({ transform(chunk, encoding, callback) { callback(null, chunk.toString().replace('localhost:10086', 'api.douban.com')) } }) const server = net.createServer((socket) => { const client = net.connect(80, 'api.douban.com') socket.pipe(transform).pipe(client).pipe(socket) }) server.listen(10086)
可以访问http://localhost:10086/v2/book/5402682
@eggggger 大神啊! 请问学习这方面知识看哪些书?还有我现在http可以用这个方法
如果用http代理https站点,怎么弄呢?
express-http-proxy proxy(url, { forwardPath: function (req, res) { return newPath; } })(req, res, next);
@bsdragon 代理https不行啊,有什么办法吗
@suxiaoxin https://www.npmjs.com/package/express-http-proxy
@suxiaoxin 这些是http协议的相关知识 可以看看《HTTP权威指南》
为什么不用nginx…
CNode 社区为国内最专业的 Node.js 开源技术社区,致力于 Node.js 的技术研究。
可以直接把tcp流导过去,像这样
可以访问http://localhost:10086/v2/book/5402682
@eggggger 大神啊! 请问学习这方面知识看哪些书?还有我现在http可以用这个方法
如果用http代理https站点,怎么弄呢?
@bsdragon 代理https不行啊,有什么办法吗
@suxiaoxin https://www.npmjs.com/package/express-http-proxy
@suxiaoxin 这些是http协议的相关知识 可以看看《HTTP权威指南》
为什么不用nginx…