system.net.httpclientクエリ文字列構築方法Get request
]質問:
system.net.httpclientには、get requestパラメーターを直接追加するためのAPIがありません。 Name-Valueコレクション、URLエンコード、および接続を手動で作成せずに、クエリ文字列を構築する簡単な方法はありますか?
答え:
いくつかの。手動操作なしでクエリ文字列を簡単に構築する:
// 解析空查询字符串
var query = HttpUtility.ParseQueryString(string.Empty);
// 添加参数
query["foo"] = "bar&-baz";
query["bar"] = "bazinga";
// 将查询转换为字符串
string queryString = query.ToString();
これにより、次のクエリ文字列が生成されます。
foo=bar&-baz&bar=bazinga
]
または、uribuilderクラスを活用すると、より包括的なソリューションが提供されます。
// 为目标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();
この方法は次のURLを生成します:
http://example.com/?foo=bar&-baz&bar=bazinga
このURLをSystem.net.httpClientのgetAsyncメソッドにシームレスに統合して、必要なクエリパラメーターを使用してGETリクエストを実行できます。 免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3