RestTemplate.exchange() УДАЛИТЬ тело запроса на удаление ⇐ JAVA
-
Гость
RestTemplate.exchange() УДАЛИТЬ тело запроса на удаление
У меня возникла странная проблема с приведенным ниже методом.
@Override общественная строка deleteToEe (тело строки) { logger.debug("Тело запроса"); logger.debug(тело); Заголовки HttpHeaders = новые HttpHeaders(); headers.add("Content-Type", MediaType.APPLICATION_JSON_VALUE); headers.add("партнер", "тест"); headers.add("api_key", "certxxxx"); Запрос HttpEntity = новый HttpEntity(тело, заголовки); ResponseEntity результат = ноль; пытаться { результат = restTemplate.exchange(targetUrl, HttpMethod.DELETE, запрос, String.class); } catch (RestClientException e) { // TODO Автоматически сгенерированный блок catch е.printStackTrace(); } вернуть результат.getBody(); } Когда я запускаю этот метод, обращаясь к сопоставлению запросов контроллера через Postman, он работает. Но когда тестировщики запускают этот метод в своих интеграционных тестах или когда я запускаю этот метод с помощью Curl
curl -X DELETE -H "Принять: application/json" -H "Тип контента: application/json" -d "{"userName": "21", "courseId": "104882_bfaculty3_1024", "isbn": "9780323055", "schoolUserId": "1234" }" http://localhost:8080//api/provision В этом месте кода я получаю исключение с нулевым указателем
result = restTemplate.exchange(targetUrl, HttpMethod.DELETE, request, String.class); Я поставил точку останова в коде и похоже, что у нас есть тело запроса, но по какой-то причине оно удаляется при вызове restTemplate.exchange(). Кто-нибудь видел подобное раньше?
У меня возникла странная проблема с приведенным ниже методом.
@Override общественная строка deleteToEe (тело строки) { logger.debug("Тело запроса"); logger.debug(тело); Заголовки HttpHeaders = новые HttpHeaders(); headers.add("Content-Type", MediaType.APPLICATION_JSON_VALUE); headers.add("партнер", "тест"); headers.add("api_key", "certxxxx"); Запрос HttpEntity = новый HttpEntity(тело, заголовки); ResponseEntity результат = ноль; пытаться { результат = restTemplate.exchange(targetUrl, HttpMethod.DELETE, запрос, String.class); } catch (RestClientException e) { // TODO Автоматически сгенерированный блок catch е.printStackTrace(); } вернуть результат.getBody(); } Когда я запускаю этот метод, обращаясь к сопоставлению запросов контроллера через Postman, он работает. Но когда тестировщики запускают этот метод в своих интеграционных тестах или когда я запускаю этот метод с помощью Curl
curl -X DELETE -H "Принять: application/json" -H "Тип контента: application/json" -d "{"userName": "21", "courseId": "104882_bfaculty3_1024", "isbn": "9780323055", "schoolUserId": "1234" }" http://localhost:8080//api/provision В этом месте кода я получаю исключение с нулевым указателем
result = restTemplate.exchange(targetUrl, HttpMethod.DELETE, request, String.class); Я поставил точку останова в коде и похоже, что у нас есть тело запроса, но по какой-то причине оно удаляется при вызове restTemplate.exchange(). Кто-нибудь видел подобное раньше?
Мобильная версия