akka-http URL цепочка всегда дает 404 - PullRequest
0 голосов
/ 02 июля 2018

Я пытаюсь создать REST API с помощью сервера akka-http.
Конечная точка REST: / пользователь / аутентификация / сохранение [метод POST, принимающий данные]
Я пробовал ниже сегменты кода:

return post(() -> route(path("/user/auth/save", () -> formFieldList(fields -> {
            return complete("The form fields are " + fields);
        })))).seal();

Как обычно, это не работает.
Затем я попытался реализовать дерево маршрутизации:

return post(() -> route(path("usr", () -> route(path("auth", () -> formFieldList(fields -> {
            return complete("The form fields are " + fields);
        })))))).seal();

Даже этот, похоже, не работает.
Как правильно это сделать?

1 Ответ

0 голосов
/ 02 июля 2018

Хотя я никогда не использовал Java API, я смог сопоставить маршрут с помощью PathMatchers внутри маршрута следующим образом:

    return route(
            path(PathMatchers.segment("usr").slash("auth").slash("save"), () ->
                post(() ->
                    complete("it works!")))
    );

Это соответствует должным образом и вернул ожидаемый ответ.

Для этой ситуации имеется директива:

PathMatchers.separateOnSlashes("usr/auth/save")

...