我想创建一个 http 代理服务,然后根据 url 将请求转发到其他代理服务器 /不使用代理直接转发.
之所以有这么奇怪的需求,是因为 puppeteer 没找到啥好的办法给 page 设置不同的代理. 所以想起个 node 代理服务, 然后给 puppeteer 的浏览器设置 --proxy-server=127.0.0.1:9000, 在代理服务里根据 url 判断是直接连接还是走别的代理.
举个例子:
有如下两个请求被发送到 http 代理服务器 127.0.0.1:9000.
我想将 a.com 直接转发,不走代理.而 b.com 转发到别的代理服务器.
Node 有什么现成的库或者是实现思路吗吗?
const requestPromise = require('request-promise-native')
const resultA = await requestPromise({
url:'http://a.com',
proxy: 'http://127.0.0.1:9000'
})
const resultB = await requestPromise({
url:'http://b.com',
proxy: 'http://127.0.0.1:9000'
})
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.