Spring REST - десериализация объекта из запроса GET - PullRequest
0 голосов
/ 21 мая 2019

Я пытаюсь реализовать конечную точку, которая берет сериализованный объект из параметра запроса и десериализует его в POJO. Есть ли простой способ сделать это с помощью Spring?

Пример запроса: http://localhost/routes/departures?trip=%7B%22stopId%22:%22U321Z102%22,%22routeId%22:%22L991D1%22,%22headSign%22:%22Nemocnice+Motol%22%7D который должен перевести на это:

trip: {"stopId":"U321Z102","routeId":"L991D1","headSign":"Nemocnice Motol"}

Кроме того, значения этих параметров могут содержать пробелы и специальные символы (ěščř ...). Будет ли весна справиться с этим? В качестве альтернативы я мог бы отправить эти параметры отдельно, а не сериализовать, но я боюсь, что это будет проблемой.

1 Ответ

0 голосов
/ 21 мая 2019

Вам нужно отправить пользователя с помощью пост-запроса (отправьте userDTO с такими же именами типов и атрибутов, что и на заднем конце)

ваш контроллер остальных будет выглядеть так

    @PostMapping("/users")
    @PreAuthorize("hasRole(\"" + AuthoritiesConstants.ADMIN + "\")")
    public ResponseEntity<User> createUser(@Valid @RequestBody UserDTO userDTO)      throws URISyntaxException {
    log.debug("REST request to save User : {}", userDTO);
...