Wie kann ich eine GET-Anfrage mit der Spring RestTemplate senden? Andere Fragen haben POST verwendet, aber ich muss GET verwenden. Wenn ich dies ausführe, funktioniert das Programm weiterhin, aber es scheint, dass das Netzwerk verstopft ist, weil es sich in einer AsyncTask befindet. Wenn ich versuche, eine andere Asynctask auszuführen, nachdem ich auf die Schaltfläche für diese geklickt habe, funktionieren sie nicht.
Ich habe es versucht
String url = "https://api.blah.com/2.0/search/cubes?w=jdfkl&whitespace=1";
MultiValueMap<String, String> map = new LinkedMultiValueMap<String, String>();
map.add("Bearer", accessToken);
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_FORM_URLENCODED); //copied this from somewhere else, not sure what its for
HttpEntity<MultiValueMap<String, String>> request = new HttpEntity<MultiValueMap<String, String>>(map, headers);
HttpMessageConverter<String> stringConverter = new StringHttpMessageConverter();
FormHttpMessageConverter formConverter = new FormHttpMessageConverter();
List<HttpMessageConverter<?>> msgConverters = new ArrayList<HttpMessageConverter<?>>();
msgConverters.add(formConverter);
msgConverters.add(new MappingJacksonHttpMessageConverter());
msgConverters.add(stringConverter);
template.setMessageConverters(msgConverters);
//SetSearchResponseData is my custom class to store the incoming JSON
ResponseEntity<SetSearchResponseData> result = template.exchange(url, HttpMethod.GET, request, SetSearchResponseData.class);
//If I was using post, i could have done SetSearchResponseDataresponse = restTemplate.postForObject(url, request, SetSearchResponseData.class);
getForEntity()
, welche AngebotegetHeaders()
undgetBody()
.