坏消息 400 ||原因:非法字符空格=



当我在springboot中使用Resttemplate发送请求时,我一直得到这个错误。有人在那里,请建议。错误消息400 ||原因:非法字符SPACE=' '。请看下面的代码:

请求
headers.set("Content-Type", "text/xml;charset=utf-8");
headers.setBasicAuth("XXXX", "YYYY");
headers.set("X-Original Signer", "signer");
headers.set("X-Signature","signature");
HttpEntity<?> entity = new HttpEntity<>(request, headers);
try{
String fetch=restTemplate.postForObject(url, entity, String.class);            
return new ResponseEntity<>(fetch, HttpStatus.OK);
} catch(Exception e){
e.printStackTrace();
return new ResponseEntity<>(e.getMessage(), HttpStatus.OK);
}

创建Resttemplate配置

@Bean
public RestTemplate restTemplate() throws Exception{
TrustStrategy acceptingTrustStrategy = (X509Certificate[] chain, String authType) -> true;
SSLContext sslContext = new SSLContextBuilder().loadTrustMaterial(trustStore.getURL(), trustStorePassword.toCharArray(), acceptingTrustStrategy)
.loadKeyMaterial(keystore.getURL(), keystorePassword.toCharArray(), keystorePassword.toCharArray()).build();
SSLConnectionSocketFactory socketFactory = new SSLConnectionSocketFactory(sslContext, new LocalHostnameVerifier());
HttpClient httpClient = HttpClients.custom().setSSLSocketFactory(socketFactory).build();
HttpComponentsClientHttpRequestFactory factory = new HttpComponentsClientHttpRequestFactory(httpClient);

return new RestTemplate(factory);
}
private class LocalHostnameVerifier implements HostnameVerifier {
@Override
public boolean verify(String hostname, SSLSession session) {
// TODO Auto-generated method stub
return "127.0.0.1".equals(hostname);
}

}

期望从API接收响应,但似乎不能通过API。请协助

headers.set("X-Original Signer", "signer");

请求头中的空格有问题。