私はプロジェクトにカスタムIHttpModuleを実装しています。このIHttpModuleはフィルタファイルのアップロードとアップロードのステータスを提供します。 私は、カスタムモジュールが早く接続を閉じるようにしたいと思います。相手側が送信するすべてのデータを受信したくない場合は、受信帯域幅を節約して大きくすることができます。ブラウザへの接続を早期に終了し、応答ステータスを返す
HTTPプロトコルを使用する可能性はありますか?
"ContentLength:0"と "Connection:close"ヘッダーを送信しようとしました。応答をフラッシュし、接続を閉じます(HttpWorkerRequest.CloseConnection)。
workerRequest.SendStatus(400, "Bad request");
workerRequest.SendKnownResponseHeader(HttpWorkerRequest.HeaderContentLength, "0");
workerRequest.SendKnownResponseHeader(HttpWorkerRequest.HeaderConnection, "close");
workerRequest.FlushResponse(false);
workerRequest.CloseConnection();
((HttpApplication)sender).CompleteRequest();
ブラウザ/ Firefoxの応答に「接続のリセット」というエラーメッセージが表示されています。 サーバーからデータ/ヘッダー/ステータスを受信する兆候がない。
ありがとうございます。
クライアントを変更することは、ブラウザでなければなりません。 –
その場合、ブラウザはステータスを読み取らないこともあります。ステータスの送信には何の意味もありません。 –
アップロードの進行状況。あなたはいつもあなた自身のクライアント側のプラグインをフラッシュまたはシルバーライトで書く必要があります –