我会尽量保持简短。这是我在尝试理解 Spark 过滤器时遇到的问题。我正在尝试创建一个简单的应用程序,它应该做的一件事是在每次客户端即将看到 http 错误(例如 404 或 500)时创建一个错误报告。这是我的应用程序的样子:
import static spark.Spark.*;
public class MyApp {
public static void main(String[] args) {
get("/hello", (req, res) -> "{\"status\":\"OK\"}");
after((request, response) -> {
if (response.raw().getStatus() == 404) {
// here run the code that will report the error e.g.
System.out.println("An error has occurred!!");
}
});
}
}
出于某种原因,response
当我检查它是否设置为 404 时,该参数的状态属性设置为 0。文档是"after" filters are evaluated after each request and can read the request and read/modify the response
这样说的,我应该能够以某种方式做到这一点(除非文档是错误的)。
基本上,我正在尝试使用after
过滤器拦截 http 错误,但是当我尝试检查响应时,我没有得到我期望的结果。
有没有人知道做同样事情的不同方式或如何使这项工作?
谢谢。