Używam HAPI v6.11.1 i starali się warunkowo przekierować nadejścia żądania od mojego hapi.js serwera do innego serwera. To co ja TRIE tej pory:Hapi.js przekierowanie z onRequest
server.on('onRequest',function(request,reply) {
if(request.headers.customHeader) { // redirect only if header found
reply('custom header redirection').redirect('http://someurl.com');
return;
}
reply();
});
ale powyższe rozwiązanie nie będzie działać i nadal uderza mój serwer zamiast ten, podany przeze mnie.
Próbowałem robić reply.proxy() na przewodnika w 'onRequest' i uzyskałem następujący błąd:
Error: Uncaught o błędzie: Nie można proxy jeśli ładunek jest analizowany czy wyjście nie jest strumieniowo lub dane
starając się wymyślić rozwiązanie, natknąłem się na następujące z hapi.js docs:
Dostępne tylko w sposobie procedury obsługi i tylko przed jednym z post(), reply.file(), odpowiadanie. Metoda view(), reply.close(), reply.proxy() lub reply.redirect() jest wywoływana.
ale problem polega na tym, że mam około 100 tras i teraz będę musiał zmienić obsługę dla każdego żądania, aby umożliwić proxy, jeśli mój warunek jest spełniony, a nie chcę tego robić.
będę zadowolony, jeśli jest jeden z poniższych jest możliwe:
Przekierowanie wniosek „onResponse” do innej domeny, a nie w celu zmiany funkcji obsługi.
Metoda serwera, która pozwala mi skonfigurować konfigurację wszystkich tras i wprowadzić w tym celu przekierowanie proxy.
Dzięki.
Czy sprawdziłeś nagłówki w obiekcie żądania? Czy blok, do którego zostało określone przekierowanie, został osiągnięty? – ZeMoon