2

私は経験豊富な Java プログラマーですが、初心者の Web 開発者です。HttpServerJDK 1.6 に同梱されているクラスを使用して単純な Web サービスを作成しようとしています。私が見た例から、HttpHandlerhandleメソッドの典型的なコードは次のようになります。

Headers responseHeaders = exchange.getResponseHeaders();
responseHeaders.set("Content-Type", "text/plain");
exchange.sendResponseHeaders(200, 0);

OutputStream responseBody = exchange.getResponseBody();
responseBody.write(createMyResponseAsBytes());
responseBody.close();

私の質問: 成功を示すために応答ヘッダー (つまり、応答コード 200) を送信し、おそらくデータのストリーム バックを開始し、例外が発生した場合、エラー コンテンツと共に「内部サーバー エラー」応答コードを送信する必要がある場合はどうなりますか? ? つまり、例外が発生した時点で部分的な "成功" 応答をクライアントに送信した場合、どのようなアクションを実行する必要がありますか?

4

1 に答える 1

3

200 は、ストリームをフラッシュするか閉じるまで送信されません。しかし、いったん送信されてしまうと、それに対してできることは何もありません。
通常、非常に大量のデータがあり、チャンクを使用している場合にのみ発生する可能性があります。

于 2011-10-06T16:42:18.143 に答える