Optimierung der Erstellung von Abfragezeichenfolgen für System.Net.HttpClient-GET-Anfragen
System.Net.HttpClient verfügt nicht über eine integrierte Methode zum direkten Hinzufügen von Abfragezeichenfolgenparametern zu GET-Anfragen. Eine effiziente Erstellung von Abfragezeichenfolgen ist jedoch mit leicht verfügbaren .NET-Tools möglich, wodurch die manuelle URL-Kodierung und -Verkettung entfällt.
Die HttpUtility.ParseQueryString
-Methode bietet eine einfache Lösung. Es wird ein NameValueCollection
erstellt, mit dem Sie Schlüssel-Wert-Paare hinzufügen können. Die ToString()
-Methode übernimmt automatisch die URL-Kodierung:
<code class="language-csharp">var query = HttpUtility.ParseQueryString(string.Empty); query["foo"] = "bar&-baz"; query["bar"] = "bazinga"; string queryString = query.ToString(); // Output: foo=bar%253c%253e%2526-baz&bar=bazinga</code>
Für einen umfassenderen Ansatz verwenden Sie die Klasse UriBuilder
, um die gesamte URL zu erstellen:
<code class="language-csharp">var builder = new UriBuilder("http://example.com"); builder.Port = -1; //optional, remove if port is needed var query = HttpUtility.ParseQueryString(builder.Query); query["foo"] = "bar&-baz"; query["bar"] = "bazinga"; builder.Query = query.ToString(); string url = builder.ToString(); // Output: http://example.com/?foo=bar%253c%253e%2526-baz&bar=bazinga</code>
Beide Methoden verwalten die URL-Kodierung effektiv und vereinfachen so den Prozess der Erstellung korrekt formatierter Abfragezeichenfolgen für Ihre System.Net.HttpClient
GET-Anfragen. Dies führt zu saubererem, besser wartbarem Code.
Das obige ist der detaillierte Inhalt vonWie kann man Abfragezeichenfolgen für System.Net.HttpClient-GET-Anfragen effizient erstellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!