मुझे एक 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);
सादगी के लिए।