MCF*_*MCF 17 java rest spring spring-mvc resttemplate
在Spring RestTemplate中有一种方法可以将自定义标题与POST请求对象一起发送.我已经尝试过exchange
可用的方法.似乎我们可以将键值对与自定义标头一起发送,但不是连接到的请求对象本身HttpEntity.
.以下代码说明了尝试,它似乎是400 BadRequest
服务器.
HttpHeaders requestHeaders = new HttpHeaders();
requestHeaders.setContentType(MediaType.APPLICATION_JSON);
HttpEntity<?> httpEntity = new HttpEntity<Object>(requestDTO, requestHeaders);
RestTemplate restTemplate = new RestTemplate();
restTemplate.exchange(URL, HttpMethod.POST, httpEntity, SomeObject.class);
Run Code Online (Sandbox Code Playgroud)
谁知道这种情况?或者是我试图做的事情是不可能的?
And*_*rey 70
是的,如果使用MultiValueMap标头而不是HttpHeaders,则有可能
例:
MultiValueMap<String, String> headers = new LinkedMultiValueMap<String, String>();
headers.add("Authorization", "Basic " + base64Creds);
headers.add("Content-Type", "application/json");
RestTemplate restTemplate = new RestTemplate();
restTemplate.getMessageConverters().add(new MappingJackson2HttpMessageConverter());
HttpEntity<ObjectToPass> request = new HttpEntity<ObjectToPass>(objectToPassInstance, headers);
restTemplate.postForObject(urlPost, request, Boolean.class);
Run Code Online (Sandbox Code Playgroud)
Boolean.class只是因为我的控制器在这个端点返回布尔值(可能是任何东西)
编码祝你好运!
归档时间: |
|
查看次数: |
73788 次 |
最近记录: |