#java #playframework
#java #playframework
Вопрос:
Привет, в моем приложении playframework я хочу выполнить простой запрос Post.
Итак, я определил в своем маршруте это:
POST /printName @controllers.Index.printName()
Так же, как я делаю это в scala.
Тогда у меня есть следующая функция контроллера:
public Result printName(Http.Request request) {
JsonNode json = request.body().asJson();
return ok("Got name: " json.get("name").asText());
}
Итак, теперь компилятор возвращает:
отсутствуют аргументы для метода printName в индексе класса; следуйте этому методу с помощью `_’, если вы хотите рассматривать его как частично применяемую функцию
Когда я добавляю параметр в маршрут, подобный этому:
POST /printName @controllers.Index.printName(request: Request)
Затем я получил эту ошибку
не найдено: введите запрос
Как это было бы правильно? Пример взят со страницы Playframework:https://www.playframework.com/documentation/2.7.x/JavaBodyParsers#The-default-body-parser
Заранее спасибо.
Ответ №1:
Я нашел решение:
функция контроллера
public Result printName() {
Http.Request request = request();
JsonNode json = request.body().asJson();
return ok("Got name: " json.get("name").asText());
}
и маршрут
POST /printName @controllers.Index.printName()