legu_anyproxy
v1.0.0
Published
HTTPS proxy in Node.js
Downloads
3
Readme
基于 AnyProxy 进行修改
httpsalibaba/anyproxy v4.1.3
用了一些代理工具,感觉还是自己写逻辑控制的比较自由。
默认不会等待请求体和响应体,流式处理
配置
connectDetail = {
host,
port,
req
}
detailInfo = {
rawReqInfo: {
method: req.method,
url: fullUrl,
headers: req.headers,
body: null,
}, //客户端请求信息
reqInfo: {
method: req.method,
url: fullUrl,
headers: req.headers,
}, //转发远程请求信息
rawResInfo: {
headers,
statusCode,
body: null
},//远程服务响应信息
resInfo: {
headers,
statusCode,
body: null
},//响应客户端信息
req: req,//客户端请求
res: res,//远程服务响应,发送远程请求才有
waitReqData: false, //是否等待请求体,默认不等待,流式处理, isWaitReqData修改才有效
waitResData: false, //是否等待响应体,默认不等待,流式处理 beforeSendRequest之前修改
dangerouslyIgnoreUnauthorized: this.dangerouslyIgnoreUnauthorized
};
{
summary: () => 'AnyProxy的默认规则',
async isDealHttpsRequest(connectDetail) {
//默认都拦截请求,return false 才不拦截
},
beforeWsClient(wsReqInfo) {
//与本地代理的server绑定的ws服务,接到浏览器的ws请求
//创建一个ws客户端进行转发到目标服务器
return wsReqInfo;
},
async isWaitReqData(reqInfo, detailInfo) {
},
async beforeSendRequest(reqInfo, detailInfo) {
},
async beforeSendResponse(resInfo, detailInfo) {
},
}
可以通过访问代理服务接口/__anyproxy/user_rule,刷新配置 可以通过访问代理服务接口/__anyproxy/close,关闭服务