Tôi phải thực hiện một RESTcuộc gọi bao gồm các tiêu đề tùy chỉnh và các tham số truy vấn. Tôi đặt HttpEntitychỉ với các tiêu đề (không có phần thân) và tôi sử dụng RestTemplate.exchange()phương pháp như sau:
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);
Điều này không thành công ở cuối máy khách với việc dispatcher servletkhông thể giải quyết yêu cầu cho người xử lý. Sau khi gỡ lỗi, có vẻ như các tham số yêu cầu không được gửi.
Khi tôi thực hiện trao đổi với POSTviệc sử dụng phần thân yêu cầu và không có tham số truy vấn nào, nó sẽ hoạt động tốt.
Có ai có ý tưởng nào?
exchangethànhgetForEntity:restTemplate.getForEntity(builder.build().encode().toUri(), String.class);cho đơn giản.