2

我是一名经验丰富的 Java 程序员,但也是一名新手 Web 开发人员。我正在尝试使用HttpServerJDK 1.6 附带的类来组合一个简单的 Web 服务。从我查看的示例中,HttpHandler'handle方法中的一些典型代码如下所示:

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 回答