簡化 System.Net.HttpClient GET 請求的查詢字串建立
System.Net.HttpClient 缺乏直接向 GET 請求新增查詢字串參數的內建方法。 然而,使用現成的 .NET 工具可以實現高效的查詢字串構造,從而消除手動 URL 編碼和連接。
HttpUtility.ParseQueryString
方法提供了一個簡單的解決方案。 它會建立一個 NameValueCollection
允許您新增鍵值對。 ToString()
方法自動處理 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>
要獲得更全面的方法,請使用 UriBuilder
類別來建構整個 URL:
<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>
這兩種方法都可以有效管理 URL 編碼,簡化為 System.Net.HttpClient
GET 請求創建格式正確的查詢字串的過程。這會帶來更乾淨、更易於維護的程式碼。
以上是如何有效率地建構 System.Net.HttpClient GET 請求的查詢字串?的詳細內容。更多資訊請關注PHP中文網其他相關文章!