Umgang mit der IP-Backlist mit Reactor Netty HttpClient

Post a reply

Smilies
:) :( :oops: :chelo: :roll: :wink: :muza: :sorry: :angel: :read: *x) :clever:
View more smilies

BBCode is ON
[img] is ON
[flash] is OFF
[url] is ON
Smilies are ON

Topic review
   

Expand view Topic review: Umgang mit der IP-Backlist mit Reactor Netty HttpClient

by Guest » 12 Jan 2025, 10:09

Ich versuche, IP-Blacklist-Szenarien in einem Reactor Netty HttpClient zu bewältigen. Ich habe die Blacklist-Prüfung mit doAfterResolve implementiert, wie unten gezeigt:

Code: Select all

var httpClient = reactor.netty.http.client.HttpClient.create()
// ...
httpClient = httpClient.doAfterResolve((conn, addr) -> {
InetAddress address = ((InetSocketAddress) addr).getAddress();
if (isBlocked(address))
throw new IllegalStateException("IP is blocked");
});
Wenn die Ausnahme jedoch ausgelöst wird, wird sie nicht an den doOnError-Handler in meiner Anforderungskette weitergegeben:

Code: Select all

httpRequest
.retrieve()
// ...
.doOnError(e -> {
// Expect error handling here
})
.toFuture();
Ich hatte erwartet, dass die in doAfterResolve ausgelöste Ausnahme im doOnError-Handler abgefangen wird, aber es scheint, dass dies nicht der Fall ist. Wie kann ich diesen Fehler in der Anforderungskette richtig behandeln?

Top