私はC#HttpListenerクラスを使用していくつかのサーバを実現しています。そして、ここに問題があります。私は、追加のテキストなしC#HttpListener。 EMPTYレスポンスを送信する(アーティファクトなし)
HTTP/1.1 200 OK
または
HTTP/1.1 400 Bad Request
のような要求にクライアントに空の応答を送信します。だから私はステータスコードとステータスの説明を設定し、レスポンスにはバイトを書き込まないOutputStream - 私はそれらを必要としません。応答を閉じて、response.Close()メソッドでクライアントにバイトを送信します。 HttpListener Server Header c# - そして、何私はバイオリンで示されるクライアント側で取得すると、サーバおよび日付フィールドの回避策はあり
HTTP/1.1 200 OK
Transfer-Encoding: chunked
Server: Microsoft-HTTPAPI/2.0
Date: Sun, 25 Oct 2015 10:42:12 GMT
0
です。
しかし、この "Transfer-Encoding:chunked"アーティファクトと "0"ボディをこのレスポンスから削除するにはどうしたらいいですか?
ありがとうございます!
コード:
private void ProcessContext(HttpListenerContext aContext)
{
HttpListenerResponse response = aContext.Response;
response.StatusCode = (int)HttpStatusCode.OK;
response.StatusDescription = "OK";
response.Close();
}
ありがとう、Nasreddine!そして、 "Content-Length"行を省略することは可能ですか?私たちのクライアントは、裸の「HTTP/1.1 200 OK」というフォームを待ちます。理由を聞かないでください。 – Pavel
*空の行でヘッダから区切られたボディゼロ長の行も削除してください。 – Pavel
@Pavel AFAIK HttpListenerの応答をその詳細レベルまで変更することはできません。彼らは密封されているので、あなたはそれらを継承することもできません – Nasreddine