Używam http-proxy na node.js. Mam żądanie proxy do innego serwera. moim wymaganiem jest, aby żądanie proxy miało limit czasu w ciągu 10 sekund. Również wtedy, gdy czas się dzieje, powinien być w stanie wyświetlać niestandardowy komunikat do użytkownikanode.js http-proxy jak ustawić limit czasu i handler na żądanie
Mam poniższy kod
var proxy = new httpProxy.RoutingProxy();
req.on('error', function (err,req,res){
res.send("An error occured");
});
proxy.proxyRequest(req, res, {
host: 'localhost',
port: port,
headers:req.headers,
timeout:10000
})
Ustawia limit czasu (z przyczyn nie znanych, to czasy w 17 secs), ale wywołanie zwrotne nie jest nigdy wykonywane. To tylko pokazuje standardową wiadomość przeglądarce
The connection was reset
The connection to the server was reset while the page was loading.
góry dzięki
UPDATE:
Próbowałem
proxy.on('proxyError', function (err,preq,pres) {
pres.writeHead(500, { 'Content-Type': 'text/plain' });
pres.write("An error happened at server. Please contact your administrator.");
pres.end();
});
Tym razem metoda zostanie wywołana, ale twierdzi, że odpowiedź jest już wysłana, dlatego nie można ustawić nagłówków