POST-запрос отправляется в странном формате - PullRequest
0 голосов
/ 08 марта 2019

Я намереваюсь отправить ответ моего сервера в следующем формате Api Doc

Я сделал следующее

            headersR.add("response_code", "OK");
            headersR.add("cmd_code", "SET_FK_NAME");
            headersR.add("trans_id", Long.toString(System.currentTimeMillis()/1000000));

            JSONPObject map1 = new JSONPObject("fk_name", "jj");

            return new ResponseEntity<>(map1, headersR, HttpStatus.OK);

Я получил отрицательный ответ с другой стороны, поэтому я проверил Wireshark (мне было трудно записать мое тело ответа). И я получил это в Wireshark.

Скриншот Wirehark

Тело ответа определенно не JSON. Как я могу это исправить?

1 Ответ

0 голосов
/ 10 марта 2019

Тело ответа fk_name("jj") - это не JSON, это JSONP - браузер примет имя функции fk_name и попытается выполнить его с "jj" в качестве параметра.

Основная причина в том, что вы используете JSONPObject , конструктор которого принимает 2 параметра: имя функции и значение данных. Не ожидаемый ключ и значение JSON.

Чтобы исправить эту проблему и вернуть {"fk_name":"jj"}, удалите JSONPObject и используйте код следующим образом:

return new ResponseEntity<>("{\"fk_name\":\"jj\"}", headersR, HttpStatus.OK);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...