Java Akka HTTP路径匹配器



我正在尝试将使用VERTX编写的HTTP服务转换为Java中的Akka HTTP(2.0.5(。我有几个URL,例如 -

  • "/api/addresses/id/:id/limit/:limit/lim>"
  • "/api/addresses/:id/:shortid/:type"

如何使上述路径匹配?

另外,如何从资源目录中提供静态资源(例如HTML,JS,CSS文件(?这个路径匹配器是否可以 - pathprefix("资产/*。html",(( -> getFromResourcedirectory(" andsets"((

我能够使第一部分工作,但无法弄清楚如何提供静态资源。这是为我解决问题的工作代码 -

pathPrefix("api", () -> path(segment("addresses").slash("id").slash(segment()).slash("limit").slash(segment()), (String id, String limit) -> {
                return getEitherListResponse(
                        () -> doSomethingWith(id, limit));
            })),
pathPrefix("api", () -> path(segment("addresses").slash(segments()), (List<String> list) -> {
                if (list.size() == 2) {
                    String id = list.get(0);
                    String shortId = list.get(1);
                    return getEitherListResponse(
                            () -> doSomethingWith(id, shortId));
                } else {
                    String id = list.get(0);
                    String shortId = list.get(1);
                    String type = list.get(2);
                    return getEitherListResponse(
                            () -> doSomethingWith(id, shortId, type));
                }
            }))

相关内容

  • 没有找到相关文章

最新更新