[英]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.