请求的路由[/ echo / cat]尚未在Spark中映射

时间:2017-06-01 22:18:51

标签: spark-java

我是新手,用Java学习Spark。我尝试处理Get请求。

当我处理代码时,localhost:4567不是问题。我在Spark中有一个映射问题。

以下是代码。

Spark.get(new Route("/echo/:thing") {
            @Override
            public Object handle(final Request request, final Response response) {
                return request.params(":thing");
            }
        });

代码抛出

404未找到

请求的路由[/ echo / cat]尚未在Spark中映射。

我该如何解决?谢谢。

1 个答案:

答案 0 :(得分:1)

正如SHG所述,由于Spark 2.0.0 (May 2014)get方法至少需要2个参数:路径和回调。 因此,您的代码不再有效,我们鼓励您升级到Spark 2,因为Spark 1不再更新。

使用Spark 2,您的代码变为:

Spark.get("/echo/:thing", new Route() {
    @Override
    public Object handle(final Request request, final Response response) {
        return request.params(":thing");
    }
});

甚至更简单的Java 8 lambda表示法:

Spark.get("/echo/:thing", (req, res) -> {
    return req.params(":thing");
});