Heim > Backend-Entwicklung > C++ > Wie kann ich ganz einfach Abfragezeichenfolgen für System.Net.HttpClient-GET-Anfragen erstellen?

Wie kann ich ganz einfach Abfragezeichenfolgen für System.Net.HttpClient-GET-Anfragen erstellen?

Patricia Arquette
Freigeben: 2025-01-09 09:41:42
Original
420 Leute haben es durchsucht

How Can I Easily Build Query Strings for System.Net.HttpClient GET Requests?

Abfragezeichenfolge-Konstruktionsmethode für System.Net.HttpClient-GET-Anfrage

Frage:

System.Net.HttpClient verfügt nicht über eine API zum direkten Hinzufügen von GET-Anfrageparametern. Gibt es eine einfachere Möglichkeit, Abfragezeichenfolgen zu erstellen, ohne manuell Name-Wert-Sammlungen, URL-Codierung und Verkettung zu erstellen?

Antwort:

Ja. Erstellen Sie ganz einfach Abfragezeichenfolgen ohne manuellen Aufwand:

<code class="language-csharp">// 解析空查询字符串
var query = HttpUtility.ParseQueryString(string.Empty);

// 添加参数
query["foo"] = "bar&-baz";
query["bar"] = "bazinga";

// 将查询转换为字符串
string queryString = query.ToString();</code>
Nach dem Login kopieren

Dadurch wird die folgende Abfragezeichenfolge generiert:

<code>foo=bar%3c%3e%26-baz&bar=bazinga</code>
Nach dem Login kopieren

Alternativ bietet die Verwendung der UriBuilder-Klasse eine umfassendere Lösung:

<code class="language-csharp">// 为目标URL创建一个UriBuilder
var builder = new UriBuilder("http://example.com");
builder.Port = -1;

// 解析查询字符串
var query = HttpUtility.ParseQueryString(builder.Query);

// 添加参数
query["foo"] = "bar&-baz";
query["bar"] = "bazinga";

// 更新UriBuilder的查询字符串
builder.Query = query.ToString();

// 获取完整的URL
string url = builder.ToString();</code>
Nach dem Login kopieren

Diese Methode generiert die folgende URL:

<code>http://example.com/?foo=bar%3c%3e%26-baz&bar=bazinga</code>
Nach dem Login kopieren

Sie können diese URL nahtlos in die GetAsync-Methode von System.Net.HttpClient integrieren, um eine GET-Anfrage mit den erforderlichen Abfrageparametern durchzuführen.

Das obige ist der detaillierte Inhalt vonWie kann ich ganz einfach Abfragezeichenfolgen für System.Net.HttpClient-GET-Anfragen erstellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage