JSONObject как тело запроса в Spring mvc с трикотажем (Джексон) - PullRequest
0 голосов
/ 14 апреля 2020

Недавно я узнал, что картограф Джексона не может включить в ваш код JSONObject. Большую часть времени я использовал пользовательские POJO для получения тела запроса, так что это меня удивило. Пожалуйста, извините, если это наивный вопрос.

public Response anyPOSTApi( @RequestBody org.json.JSONObject json) {...}

Если вы попробуете приведенный выше код, вы всегда получите пустой JSONObject.

Я хотел бы узнать причину этого не нужен обходной путь как сейчас)? Или есть какая-то конкретная c зависимость, чтобы заставить это работать?

1 Ответ

0 голосов
/ 14 апреля 2020

@ RequestBody отображает данные тела в аргументы метода, только если имя поля класса аргумента совпадает с ключами запроса в теле запроса. В противном случае вам нужно зарегистрировать свой собственный DataBinder с помощью аннотированного метода @initBinder, который свяжет данные тела запроса с вашим аргументом.

...