Fügen Sie meine benutzerdefinierte http-header auf den Frühling RestTemplate beantragen / verlängern RestTemplate

Mein Aktueller code:

RestTemplate restTemplate = new RestTemplate();
restTemplate.getMessageConverters().add(new MappingJackson2HttpMessageConverter());
Mall[] malls = restTemplate.getForObject(url, Mall[].class);

Muss ich hinzufügen einige benutzerdefinierte Header für meinen Wunsch, in der form:

X-TP-DeviceID : <GUID>

Was ist der einfachste Weg, dies zu tun in meinem Fall? Gibt es eine Möglichkeit zum hinzufügen von benutzerdefinierten Header-definition, um meine restTemplate Objekt, bevor ich senden Sie die Anfrage an den server?

[Bearbeiten]

Ist es richtig?

RestTemplate restTemplate = new RestTemplate();
restTemplate.getMessageConverters().add(new MappingJackson2HttpMessageConverter());

HttpHeaders headers = new HttpHeaders();
headers.set("X-TP-DeviceID", "1234567890");
HttpEntity entity = new HttpEntity(headers);

HttpEntity<Mall[]> response = restTemplate.exchange(url, HttpMethod.GET, entity, Mall[].class);

Mall[] malls = response.getBody();

[Hinzugefügt]

So, ich habe es geschafft es zum laufen zu bringen. Allerdings bin ich nicht ganz zufrieden mit, dass. In meinem Fall werde ich brauchen, um die gleichen benutzerdefinierten Header für alle Anrufe, die ich mache.

So, meine nächste Frage ist - Ist es möglich, eigene benutzerdefinierte Header werden automatisch Hinzugefügt, auf jeder web-service nennen, beispielsweise die Ausweitung RestTemplate Klasse und setzen alle custom Header gibt es? Dann, alles, was ich brauchen würden, wäre ein nutzen Sie einfach meine benutzerdefinierte erweiterte RestTemplate statt das Lager ein, und alle meine custom-Header vorhanden sein, gibt es standardmäßig.

InformationsquelleAutor user1209216 | 2015-09-17
Schreibe einen Kommentar