Wenn Sie die Klasse httpwebrequest und webrequest in C# verwenden, wenn Sie versuchen, den Header der HTTP-Anfrage zu setzen, egal ob Sie die set- oder add-Methode verwenden, zum Beispiel die Host-Eigenschaft im Header:
will error: "Dieser Header muss mit dem entsprechenden Attribut oder der entsprechenden Methode modifiziert werden".
// Zusammenfassung: Erhalte oder setze den Host-Header-Wert so, dass er unabhängig von der Anfrage-URI in einer HTTP-Anfrage verwendet wird. // Rückgabeergebnisse: Host-Headerwert in HTTP-Anfragen. // Anomalie: System.ArgumentNullException: Host-Header können nicht auf null gesetzt werden. // System.ArgumentException: Host-Header können nicht auf ungültige Werte gesetzt werden. // System.InvalidOperationException: Host-Header können nicht mehr gesetzt werden, nachdem Sie begonnen haben, System.Net.HttpWebRequests zu senden. öffentlicher String Host { get; Set; }
Grund: C# erlaubt es nicht, die Set- und Add-Methoden zu verwenden, um solche Header zu setzen C# stellt bereits ein dediziertes Attribut für einen solchen Header bereit, das du beim Ändern und Setzen dieses Headers verwenden kannst. Der Header-Name und die entsprechenden Attribute sind wie folgt gesetzt: | Header | Aufbau | | Akzeptieren | Akzeptiere Eigentum. | | Verbindung | Gesetzt durch die Connection-Eigenschaft und die KeepAlive-Eigenschaft. | | Inhaltslänge | Gesetzt durch die ContentLength-Eigenschaft. | | Inhaltstyp | Setby die ContentType-Eigenschaft. | | Rechnen Sie mit | Gesetzt durch die Erwartungs-Eigenschaft. | | Datum | Setzen Sie nach der Date-Eigenschaft. | | Moderator | Host-Eigentum. | | Wenn-modifiziert-seit | Gesetzt durch die IfModifiedSince-Eigenschaft. | | Bereich | Gesetzt mit der AddRange-Methode. | | Referer | Gesetzt durch die Referer-Eigenschaft. | | Transfer-Kodierung | Gesetzt durch die TransferEncoding-Eigenschaft (die SendChunked-Eigenschaft muss wahr sein). | | User-Agent | UserAgent-Eigenschaft. |
|