Java Server用于处理HTTP GET / POST和接收&以JSON回应

时间:2015-10-07 08:58:08

标签: java http post get spark-java

我想用Java编写一个代码,它将充当我的角度前端的服务器(托管在另一台服务器上,npm)。我需要接收请求,从发送的JSON中获取值并返回JSON。 我调查了sparkJava。它看起来很完美,因为我需要处理多个请求,如(/ authentication,/ records,/ user / Details等)。 我遇到的问题是它无法接收来自其他服务器的请求。如果前端也在其中托管,它工作正常。

1 个答案:

答案 0 :(得分:0)

为了使SparkJava应用程序能够接收外部请求,您必须启用CORS。在任何路由/过滤器之前添加以下代码段。

        options("/*",
            (request, response) -> {

                String accessControlRequestHeaders = request
                        .headers("Access-Control-Request-Headers");
                if (accessControlRequestHeaders != null) {
                    response.header("Access-Control-Allow-Headers",
                            accessControlRequestHeaders);
                }

                String accessControlRequestMethod = request
                        .headers("Access-Control-Request-Method");
                if (accessControlRequestMethod != null) {
                    response.header("Access-Control-Allow-Methods",
                            accessControlRequestMethod);
                }

                return "OK";
            });

在客户端(angularjs),执行以下操作

$httpProvider.defaults.useXDomain = true;