【问题标题】:Default route for a restful web service to return a Json objectRESTful Web 服务返回 Json 对象的默认路由
【发布时间】:2016-06-29 22:41:41
【问题描述】:

我正在使用 spark-java 框架。我有一条路线:/users。但是当我输入:/users/:id 它返回 404。但我想返回一个 Json 对象说:

{
  "default_url": "localhost:4567/users"
}

这是我的 /users 路线。

Spark.get("/users", "application/json", (request, response) -> {
            response.status(200);
            response.type("application/json");
            return (new UserDaoImpl().getAllUsers());
        }, new JsonTransformer());

我收到如下错误,然后在前端出现 404

[qtp2868117-22] INFO spark.webserver.MatcherFilter - The requested route [/users/1] has not been mapped in Spark

【问题讨论】:

    标签: rest spark-java


    【解决方案1】:

    您需要为您的路线添加一个占位符。

    Spark.get("/users/:id", "application/json", (request, response) -> {
        response.status(200);
        response.type("application/json");
        return (new UserDaoImpl(request.params(":id")).getAllUsers());
    }, new JsonTransformer());
    

    请参阅文档http://sparkjava.com/documentation.html#routes

    【讨论】:

      【解决方案2】:

      添加另一个匹配该情况的规则:

      Spark.get("/users/:id", (request, response) -> {
          response.status(200);
          response.type("application/json");
          return "{\"default_url\": \"localhost:4567/users\"}";
      });
      

      【讨论】:

        猜你喜欢
        • 2012-01-09
        • 2011-07-05
        • 1970-01-01
        • 2018-10-01
        • 1970-01-01
        • 2014-09-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多