System.Net.Http 名前空間にはStringContent クラスがあります。クラス StringContent を使用する目的は何ですか?
質問する
54861 次
4 に答える
20
StringContent クラスは、http サーバー/クライアント通信に適した書式設定されたテキストを作成します。クライアント要求の後、サーバーは で応答し、その応答には、クラスHttpResponseMessage
で作成できるコンテンツが必要です。StringContent
例:
string csv = "content here";
var response = new HttpResponseMessage();
response.Content = new StringContent(csv, Encoding.UTF8, "text/csv");
response.Content.Headers.Add("Content-Disposition",
"attachment;
filename=yourname.csv");
return response;
この例では、サーバーはcsv
変数に存在するコンテンツで応答します。
于 2015-11-30T16:29:37.757 に答える
19
文字列に基づいて HTTP コンテンツを提供します。
例:
HTTPResponseMessage オブジェクトにコンテンツを追加する
response.Content = new StringContent("Place response text here");
于 2013-10-20T15:28:10.407 に答える
5
オブジェクトを Web API サーバーに送信するときはいつでも、StringContent を使用して HTTP コンテンツにフォーマットを追加します。たとえば、Customer オブジェクトを json としてサーバーに追加します。
public void AddCustomer(Customer customer)
{
String apiUrl = "Web api Address";
HttpClient _client= new HttpClient();
string JsonCustomer = JsonConvert.SerializeObject(customer);
StringContent content = new StringContent(JsonCustomer, Encoding.UTF8, "application/json");
var response = _client.PostAsync(apiUrl, content).Result;
}
于 2019-07-14T15:48:26.380 に答える
2
基本的にテキストでエンコードされたすべての応答は、 として表すことができますStringContent
。
HTML応答もテキストです(適切なコンテンツタイプが設定されています):
response.Content = new StringContent("<html><head>...</head><body>....</body></html>")
一方、ファイルをダウンロード/アップロードする場合、それはバイナリ コンテンツであるため、文字列で表すことはできません。
于 2013-10-20T15:41:00.753 に答える