router.get('/getBook',function (req,resp,next) {
const proxyUri = req.proxy.getProxy();
console.log(proxyUri);
if(proxyUri){
console.log(`proxy using : ${proxyUri}`);
request(
{uri:`https://api.douban.com/v2/book/isbn/:${req.params.isbn}`,
proxy: proxyUri.proxy,
timeout:10000,
resolveWithFullResponse:true
}).then(function (res) {
resp.send(res.body);
})
.catch(function(err){
resp.send(err);});
}
else{
resq.send("NO Proxy Available");
});
我使用代理请求数据,该请求在其他地方运行时仍有效。当作为路由器的回调函数运行时,出现了此断言错误。
AssertionError [ERR_ASSERTION]:273 == 0
at ClientRequest.onConnect
(/home/node/Proxy/node_modules/tunnel-agent/index.js:160:14)
在 Object.onceWrapper(events.js:319:30)在
发射三 (events.js:136:13)
在ClientRequest.emit(events.js:217:7)
在Socket.socketOnData(_http_client.js:474:11)
在emitOne(events.js:116:13)
在Socket.emit(events.js:211:7)
在addChunk(_stream_visible.js:263:12)
at addAddunk(_stream_visible.js:250:11)
在Socket.Readable.push(_stream_visible.js:208:10)
在TCP.onread(net.js:597:20)错误输出
我尝试删除{proxy:proxyUri.proxy}选项并运行代码,它再次起作用。
我不知道,请帮忙。
更新1:我发现此异常仅在尝试读取响应时抛出。