Vert.x检查请求标头是否包含X-Requested-With,如果不包含则拒绝

fye*_*lci 1 java csrf csrf-protection vert.x

在vert.x中,如果标头中不存在“ X-Requested-With”标头,我想拒绝请求。我要这样做是为了保护CSRF?我找不到一个很好的文件。有人有主意吗?

Nir*_*han 6

您可以在路线处理中做到这一点:

    Router router = Router.router(vertx);
    router.route("/api/*").handler(event -> {
        if(event.request().getHeader("X-Requested-With") == null){
            event.response().setStatusCode(403).putHeader("content-type", "application/json; charset=utf-8").end("{\"message\":\"Not authorized\"}");
        }else{
            event.next();
        }
    });
Run Code Online (Sandbox Code Playgroud)