Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/304.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在finally块中获取返回的HTTP状态码_Java - Fatal编程技术网

Java 如何在finally块中获取返回的HTTP状态码

Java 如何在finally块中获取返回的HTTP状态码,java,Java,我们如何访问已经在finally块中返回的HTTP状态代码 例如,在下面的代码片段中,我们如何在logResponseStatus中获取返回的HTTP状态代码 public ResponseEntity<SampleResponse> sampleAPI() { try{ return new ResponseEntity<>(new SampleResponse(), HttpStatus.OK); } finally {

我们如何访问已经在finally块中返回的HTTP状态代码

例如,在下面的代码片段中,我们如何在logResponseStatus中获取返回的HTTP状态代码


public ResponseEntity<SampleResponse> sampleAPI() {
    try{
        return new ResponseEntity<>(new SampleResponse(), HttpStatus.OK);
    } finally {
        logResponseStatus();
    }
}

void logResponseStatus(HttpStatus status) {
    // ...
}

公众反应样本API(){
试一试{
返回新的ResponseEntity(new SampleResponse(),HttpStatus.OK);
}最后{
logResponseStatus();
}
}
无效日志响应状态(HttpStatus状态){
// ...
}

我假设这是一个SpringBoot应用程序。在这种情况下,您可以添加筛选器并在筛选器中记录响应状态/正文。我建议您浏览这个链接,因为它有多个答案,并且有不同的方法来做相同的事情:@Vishal使用Aspect将是一种干净的处理方法。但是我们不能使用注释,因为我们还会在这里发送动态标记和HTTP状态。您应该使用过滤器或AOP。根据您的代码片段,我会说将返回代码放入变量中,然后将参数传递给logResponseStatus。。。