मुझे एक RESTकॉल करना है जिसमें कस्टम हेडर और क्वेरी पैरामीटर शामिल हैं। मैं HttpEntityसिर्फ हेडर (कोई शरीर नहीं) के साथ सेट करता हूं , और मैं इस RestTemplate.exchange()विधि का उपयोग करता हूं :
HttpHeaders headers = new HttpHeaders();
headers.set("Accept", "application/json");
Map<String, String> params = new HashMap<String, String>();
params.put("msisdn", msisdn);
params.put("email", email);
params.put("clientVersion", clientVersion);
params.put("clientType", clientType);
params.put("issuerName", issuerName);
params.put("applicationName", applicationName);
HttpEntity entity = new HttpEntity(headers);
HttpEntity<String> response = restTemplate.exchange(url, HttpMethod.GET, entity, String.class, params);
यह dispatcher servletएक हैंडलर के अनुरोध को हल करने में असमर्थ होने के साथ क्लाइंट के अंत में विफल रहता है । डिबग किए जाने पर, ऐसा लगता है कि अनुरोध पैरामीटर नहीं भेजे जा रहे हैं।
जब मैं POSTएक अनुरोध निकाय और कोई क्वेरी पैरामीटर का उपयोग करके एक्सचेंज करता हूं तो यह ठीक काम करता है।
क्या किसी के पास कोई विचार है?
exchangeगयाgetForEntity:restTemplate.getForEntity(builder.build().encode().toUri(), String.class);सादगी के लिए।