繁体   English   中英

正确的语法没有“返回任何东西”的servlet?

[英]Correct syntax for a servlet that doesn't “return anything”?

终止不向客户端返回任何数据的servlet的正确方法是什么?

有问题的servlet的目的是从Ajax请求中恢复一些数据并将TCP消息发送到一块硬件,告诉它改变它的状态。

您是否必须指定响应?

我选择获取输出流的引用并关闭它,这是正确的吗?

我应该发回“嘿那工作”的消息吗?

如果您只想提供“成功”状态,只需返回HTTP代码200.您不必返回任何流,因为您只想说“确定”。

public void doGet(...) {
    response.setStatus(HttpServletResponse.SC_OK); 
}

我觉得回复很好,如果你看一下像gmail这样的东西,你会注意到很多POST

ok

作为回应,我喜欢这个。 它简单而简洁。

要考虑的另一件事是你将如何处理你的请求以某种方式失败的情况,我认为你的客户端应该向用户报告一些不成功的事情,因此它需要来自servlet的响应。

您的servlet将发送带有状态代码的响应头,无论如何,我不明白为什么你应该输出任何东西。 :)

在这些情况下,我通常会返回一条成功消息,例如(在JSON中)

{ success: true }

我发现它有时会有助于调试! 我不认为有一个'正确'的响应,只要你的servlet返回200响应代码(除非你另有说明,我认为他们会这样做)然后没有问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM