在捲曲下面的調用工作是工作,服務器的響應是一個200碼:請求在捲曲而不是在RestTemplate
curl -i -H "Content-Type: application/json" -H "Cookie: wv_sess=emrri58a7f3qauof5ntfsc77k7" -X GET http://192.168.1.1/cli/aos?cmd=show+interfaces+1/1/1
但是當我嘗試用下面的代碼做同樣與RestTemplate春:
String cookies = "wv_sess=emrri58a7f3qauof5ntfsc77k7";
RestTemplate restTemplate = new RestTemplate();
HttpHeaders headers = new HttpHeaders();
headers.set("Cookie",cookies);
headers.set("Content-Type",MediaType.APPLICATION_JSON_VALUE);
HttpEntity<String> entity = new HttpEntity<>(headers);
ResponseEntity<String> response = restTemplate.exchange("http://192.168.1.1/cli/aos?cmd=show+interfaces+1/1/1", HttpMethod.GET, entity, String.class);
logger.info(response.toString());
,我收到了400碼,因此讓HttpClient的崩潰:
Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.springframework.web.client.HttpClientErrorException: 400 Bad Request] with root cause
什t是從curl句子到RestTemplate的等價物嗎? 有人有任何建議來解決它嗎?
注意:我從阿爾卡特6860交換機向WebServices發出請求。
那麼,我在RestTemplate中做了哪些不同的工作,導致它無法工作? 也許問題出在Content-Type屬性上,但我嘗試了很多組合,但仍然無法正常工作。 – Jordi
您是否嘗試過註銷您正在製作的完整請求?做類似於此處所述的內容:https://stackoverflow.com/a/22620168/530728。這應該有助於確定curl請求和RestTemplate請求之間的區別。 – Jan
爲什麼服務器返回400錯誤請求狀態完全取決於服務器......您可以在服務器中啓用詳細日誌或類似的東西嗎? – Jan