Maison >développement back-end >C++ >Comment construire efficacement des chaînes de requête pour les requêtes System.Net.HttpClient GET ?
Rationalisation de la création de chaînes de requête pour les requêtes System.Net.HttpClient GET
System.Net.HttpClient ne dispose pas d'une méthode intégrée pour ajouter directement des paramètres de chaîne de requête aux requêtes GET. Cependant, une construction efficace de chaînes de requête est réalisable à l'aide d'outils .NET facilement disponibles, éliminant ainsi le codage et la concaténation manuels des URL.
La méthode HttpUtility.ParseQueryString
apporte une solution simple. Il crée un NameValueCollection
vous permettant d'ajouter des paires clé-valeur. La méthode ToString()
gère automatiquement l'encodage des URL :
<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>
Pour une approche plus complète, utilisez la classe UriBuilder
pour construire l'URL entière :
<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>
Les deux méthodes gèrent efficacement le codage des URL, simplifiant ainsi le processus de création de chaînes de requête correctement formatées pour vos System.Net.HttpClient
requêtes GET. Cela conduit à un code plus propre et plus maintenable.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!