Wie Server Header mit Middleware entfernen?

8

In ASP.NET Core 1.0 enthält jede Antwort den Header Server: Kestrel . Ich möchte diesen Header zusammen mit anderen Header wie X-Power-By mit Middleware entfernen.

Ich weiß, dass wir den Kestrel-Header in der Host-Konfiguration entfernen können, indem wir folgendes setzen, aber ich möchte es mit Middleware machen (eigentlich können wir das tun, wenn ich Httpmodule habe, damit ich dasselbe lerne). Ich habe es versucht, aber es hat nicht funktioniert.

%Vor%

Versuchter Code:

%Vor%     
dotnetstep 09.07.2016, 08:37
quelle

1 Antwort

8

Ich habe überprüft, dass dieser Code ab Kestrel 1.0.0 funktioniert:

%Vor%

Dadurch wird der Header Server: Kestrel aus der Antwort entfernt.

Wenn Sie andere willkürliche Header aus der Antwort entfernen möchten, funktioniert eine Variation Ihres Codes. Das funktioniert nicht für den Header Server: Kestrel , da Kestrel dies nach dem Ausführen des OnSending -Delegate scheinbar hinzufügt.

Hier ist eine Beispiel-Middleware, die alle Header entfernt, die Sie übergeben:

%Vor%

Um es zu verwenden, fügen Sie es ganz oben in Ihrer Anwendungspipeline hinzu:

%Vor%     
Nate Barbettini 12.07.2016 15:48
quelle