Quando si usano le classi httpwebrequest e webrequest in C#, se provi a impostare l'intestazione della richiesta http, che tu usi il metodo set o il metodo add, come impostare la proprietà host nell'intestazione:
will errore: "Questa intestazione deve essere modificata con l'attributo o il metodo appropriato".
// Sommario: Ottieni o imposta il valore dell'intestazione Host da utilizzare indipendentemente dall'URI della richiesta in una richiesta HTTP. // Risultati dei risultati: Valore dell'header host nelle richieste HTTP. // Anomalia: System.ArgumentNullException: Le intestazioni host non possono essere impostate su null. // Eccezione di sistema.Argomento: Le intestazioni host non possono essere impostate con valori non validi. // EccezioneOperativaInvalida: Le header host non possono essere impostate dopo aver iniziato a inviare System.Net.HttpWebRequests. stringa pubblica Host { get; set; }
Motivo: C# non permette di usare i metodi set e aggiungere per impostare tali intestazioni C# fornisce già un attributo dedicato per un tale header che puoi usare modificando e impostando questo header. Il nome dell'intestazione e gli attributi corrispondenti sono impostati come segue: | Intestazione | Preparazione | | Accetta | Accetta la proprietà. | | Connessione | Impostato dalla proprietà Connessione e dalla proprietà KeepAlive. | | Contenuto Lunghezza | Impostato dalla proprietà ContentLength. | | Tipo di contenuto | Imposta dalla proprietà ContentType. | | Aspettati | Impostato dalla proprietà Aspettati. | | Data | Impostato dalla proprietà Data. | | Conduttore | Proprietà dell'ospite. | | Se-Modificato-Poiché | Impostato dalla proprietà IfModifiedSince (IfModifiedFrom). | | gamma | Impostato dal metodo AddRange. | | Referente | Impostato dalla proprietà Referer. | | Codifica di trasferimento | Impostato dalla proprietà TransferEncoding (la proprietà SendChunked deve essere vera). | | User-Agent | Proprietà dell'UserAgent. |
|