Sto riscontrando un problema con un servizio remoto Non ho alcun controllo sulla risposta con risposta HTTP 400 alle mie richieste inviate utilizzando il RestTemplate di Spring. Le richieste inviate utilizzando curl
vengono accettate, quindi le ho confrontate con quelle inviate tramite RestTemplate. In particolare, le richieste Spring hanno intestazioni Connection
, Content-Type
e Content-Length
che le richieste curl
non soddisfano. Come configuro Spring non aggiungerli?Come rimuovere alcune intestazioni HTTP aggiunte da RestTemplate di Spring?
6
A
risposta
4
Probabilmente non è questo il problema. La mia ipotesi è che non hai specificato il convertitore di messaggi corretto. Ma qui è una tecnica per rimuovere le intestazioni in modo da poter confermare che:
1. Creare un'implementazione personalizzata ClientHttpRequestInterceptor
:
public class CustomHttpRequestInterceptor implements ClientHttpRequestInterceptor
{
@Override
public ClientHttpResponse intercept(HttpRequest request, byte[] body, ClientHttpRequestExecution execution) throws IOException
{
HttpHeaders headers = request.getHeaders();
headers.remove(HttpHeaders.CONNECTION);
headers.remove(HttpHeaders.CONTENT_TYPE);
headers.remove(HttpHeaders.CONTENT_LENGTH);
return execution.execute(request, body);
}
}
2. Quindi aggiungere alla catena di intercettore del RestTemplate:
@Bean
public RestTemplate restTemplate()
{
RestTemplate restTemplate = new RestTemplate();
restTemplate.setInterceptors(Arrays.asList(new CustomHttpRequestInterceptor(), new LoggingRequestInterceptor()));
return restTemplate;
}
Problemi correlati
- 1. MeasTempo Spring RestTemplate Tempo di richiesta HTTP
- 2. Come rimuovere intestazioni HTTP specifiche in Javascript
- 3. Spring RestTemplate GET con parametri
- 4. Spring RestTemplate - async vs sync restTemplate
- 5. Spring Resttemplate exception handling
- 6. Come accedere alle intestazioni HTTP nell'endpoint di Spring-ws?
- 7. Spring RestTemplate segue reindirizzamento con cookie
- 8. Spring RestTemplate risposta al post
- 9. Esecuzione di richieste POST autenticate con Spring RestTemplate per Android
- 10. Spring RestTemplate e Proxy Auth
- 11. Lettura di intestazioni HTTP in un controller REST Spring
- 12. Spring RestTemplate Client - eccezione di connessione rifiutata
- 13. Come configurare RestTemplate di Spring per restituire null quando viene restituito lo stato HTTP di 404
- 14. Force Spring RestTemplate per utilizzare XmlConverter
- 15. Come ottenere le intestazioni HTTP
- 16. Come rimuovere alcune parole speciali da un contenuto di stringa?
- 17. Elimina intestazioni da Angular.js $ http richiesta
- 18. Come abilitare la cache di risposta HTTP in Spring Boot
- 19. PHP intestazione rimuovere HTTP
- 20. Intestazioni HTTP multilinea Confusione
- 21. Spring MVC - RestTemplate eccezione di avvio quando avviene l'http 404
- 22. Comprimere le intestazioni Http
- 23. Spring Android: utilizzo di RestTemplate con https e cookie
- 24. Consumare Spring Hateoas Restservice con RestTemplate
- 25. Intestazioni HTTP raw Puri
- 26. Come rimuovere solo alcune sottostringhe da una stringa?
- 27. Akka-http: Come impostare intestazioni di risposta
- 28. Intestazioni Angular2/Http (POST)
- 29. Leggi HTTP Post intestazioni
- 30. Come gestire la risposta vuota in Spring RestTemplate
Questa risposta potrebbe essere utile http://stackoverflow.com/questions/16339576/remove-http-response-headers-in- java –
Che codice di errore/risposta stai ottenendo? 401 non autorizzato? – cosbor11