Tôi phải thực hiện một REST
cuộ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 HttpEntity
chỉ 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 servlet
khô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 POST
việ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?
exchange
thànhgetForEntity
:restTemplate.getForEntity(builder.build().encode().toUri(), String.class);
cho đơn giản.