String url = "https://api.assembla.com/token?";
RestTemplate restTemplate = new RestTemplate();
MultiValueMap<String, String> body =
new LinkedMultiValueMap<String, String>();
body.add("client_id", "myid");
body.add("client_secret", "mysecret");
body.add("grant_type", "client_credentials");
HttpHeaders headers = new HttpHeaders();
headers.add("Accept", "application/json");
headers.add("Content-type", "application/json");
HttpEntity<?> entity = new HttpEntity<Object>(body, headers);
ResponseEntity<JsonResponseType> res =
restTemplate.exchange(url, HttpMethod.POST, entity, JsonResponseType.class);
System.out.println("Hello....." + res);
im получение 401 несанкционированной ошибки может кто-то удалить его
также использовать
MultiValueMap<String, String> body =
new LinkedMultiValueMap<String, String>();
body.add("x-api-key", "myapikey");
body.add("x-api-secret", "myapisecret");
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON);
headers.set("Accept", "application/json");
headers.set("Content-type", "application/json");
HttpEntity<?> entity = new HttpEntity<Object>(body, headers);
entity.getHeaders().setContentType(MediaType.APPLICATION_JSON);
RestTemplate restTemplate = new RestTemplate();
List<HttpMessageConverter<?>> messageConverters = new
ArrayList<HttpMessageConverter<?>>();
messageConverters.add(new MappingJacksonHttpMessageConverter());
restTemplate.setMessageConverters(messageConverters);
ResponseEntity<JsonResponseType> response =
restTemplate.exchange(
url, HttpMethod.POST, entity, JsonResponseType.class);
System.out.println("Hello....." + response);
это также ошибка 401 несанкционированная не найдена
я также использую
HttpMethod.POST, requestEntity, YourResponseType.class);
System.out.println("Hello....." + responseEntity);'
RestTemplate restTemplate = new RestTemplate();
List<MediaType> acceptableMediaTypes = new ArrayList<MediaType>();
acceptableMediaTypes.add(MediaType.APPLICATION_JSON);
HttpHeaders headers = new HttpHeaders();
headers.setAccept(acceptableMediaTypes);
HttpEntity<String> requestEntity = new HttpEntity<String>(
"X-Api-Key:myapikey X-Api-Secret:=my api secret",
headers);
ResponseEntity<YourResponseType> responseEntity = restTemplate
.exchange("https://api.assembla.com/v1/spaces.json",
это также имеет ту же ошибку
Первое, что нужно попробовать - удалить headers.add("Content-type", "application/json");
, Ваш фактический тип контента - application/x-www-form-urlencoded
.
Следующий код отлично подходит для меня:
RestTemplate restTemplate = new RestTemplate();
MultiValueMap<String, String> body = new LinkedMultiValueMap<String, String>();
body.add("client_id", "aViwaUZXir44tcdmr6bg7m");
body.add("client_secret", "65d952744a49774bcf24bcd32c521619");
body.add("grant_type", "client_credentials");
HttpHeaders headers = new HttpHeaders();
headers.add("Accept", "application/json");
HttpEntity<?> entity = new HttpEntity<Object>(body, headers);
ResponseEntity<String> res = restTemplate.exchange(
"https://api.assembla.com/token?", HttpMethod.POST, entity, String.class);
Я даже оставляю действительные учетные данные здесь, так как они созданы исключительно для тестирования.