我正在尝试使用 Weblogic 删除资源设置 http 状态 NO_CONTENT,响应需要 30 秒才能完成。我是在滥用 Spring 还是 Weblogic 中存在错误?
我已经在 Weblogic 12.2.1.0.0 上使用 Spring 5.0.12 尝试过这个。请求完成,资源被删除,但客户端等待 30 秒(浏览器 TTFB)之后。这似乎是一种超时。
作为解决方法,我们可以返回 http 状态 OK。
@DeleteMapping(value = "/{id}")
public ResponseEntity<Void> delete(@PathVariable("id") Long id) {
useCase.remove(id);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
}
我希望客户端立即收到响应,但它等待了 30 秒。
最佳答案
与 200 响应相比,您的 204 响应没有 Content-Length
header 。尝试手动添加它以查看它是否有助于您的应用程序服务器处理空响应主体:
return ResponseEntity.noContent().header("Content-Length", "0").build();
关于java - 这是使用 Spring 返回 204 "No Content"的正确方法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55691288/