Я пытаюсь сделать запрос на публикацию, отправив файл на URL-адрес, передав токен пользователя.
Итак, у меня есть 2 функции: одна возвращает токен, а вторая - файл.
Функция 2 работает хорошо отдельно, но она возвращает мне ошибку.
Сначала я не знаю, как я могу получить возвращаемое значение функции.
I ' я не уверен, что еще может вызвать ошибку?
Функция восстановления токена:
@GetMapping(value = "test/getToken")
private String getToken() throws JSONException {
String username = "";
String password = "";
int organization_id = ;
String user_auth_basic = "";
String pwd_auth_basic = "";
String base_url_auth = "";
UriComponentsBuilder builder = UriComponentsBuilder.fromHttpUrl(base_url_auth);
builder.queryParam("_orgId", organization_id);
builder.queryParam("grant_type", "password");
builder.queryParam("username", user_auth_basic);
builder.queryParam("password", pwd_auth_basic);
HttpHeaders headers = new HttpHeaders();
headers.setBasicAuth(username, password);
LinkedMultiValueMap<String, Object> body
= new LinkedMultiValueMap<>();
HttpEntity<LinkedMultiValueMap<String, Object>> requestEntity
= new HttpEntity<>(body, headers);
RestTemplate restTemplate = new RestTemplate();
ResponseEntity<String> responseEntity = restTemplate
.exchange(
builder.build().encode().toUri(),
HttpMethod.POST,
requestEntity,
String.class);
JSONObject resp = new JSONObject(responseEntity.getBody());
return resp.getString("refresh_token");
}
И тот, кто отправляет файл:
@GetMapping(value = "test/testUploadFile")
public ResponseEntity<String> uplodfile() throws JSONException {
String token = this.getToken();
String pathFile = "";
int project_id = ;
String apiUrl = "";
HttpHeaders headers = new HttpHeaders();
headers.setBearerAuth(token);
headers.setContentType(MediaType.MULTIPART_FORM_DATA);
LinkedMultiValueMap<String, Object> body
= new LinkedMultiValueMap<>();
body.add("file", new FileSystemResource(pathFile));
HttpEntity<LinkedMultiValueMap<String, Object>> requestEntity
= new HttpEntity<>(body, headers);
String serverUrl = apiUrl;
RestTemplate restTemplate = new RestTemplate();
ResponseEntity<String> responseEntity = restTemplate
.exchange(
serverUrl,
HttpMethod.POST,
requestEntity,
String.class);
return responseEntity;
}
Спасибо вы