Put-Request выдает 401 ошибку [без тела] и не может быть сохранен в объекте ответа - PullRequest
1 голос
/ 06 марта 2020

Я хочу изменить данные на сервере с помощью запроса пут, но я всегда получаю ошибку 401 [без тела]. Ответ выглядит следующим образом:

enter image description here

Я не очень понимаю, почему я получаю эту ошибку, потому что мое тело не пусто. Мой код выглядит так, и значения, кажется, тоже хорошо. Кто-нибудь знает, что я делаю не так?

enter image description here enter image description here

Почтальон Обновление:

Значения сейчас разные (согласие и авторизация), поскольку это в основном новый запрос, но значения были и раньше правильными, поэтому это изменение не должно иметь значения.

enter image description here

enter image description here

1 Ответ

0 голосов
/ 06 марта 2020

Похоже, вы просто передаете неверный заголовок авторизации или, возможно, не передаете его вообще.

Что происходит, когда вы делаете обменный вызов RestTemplate, затем вы получаете 401 из этого запроса, и Spring распространяет его и возвращает 500 - Internal Server Error, потому что обработка ошибок отсутствует.

РЕДАКТИРОВАТЬ : Согласно вашим скриншотам, вы не заменяете переменные пути. Обновите способ создания своего URL, как указано ниже.

Map<String, String> pathVars = new HashMap<>(2);
pathVars.put("consent-id", consentId);
pathVars.put("authorisation-id", authorisationId);

UriComponents uri = UriComponentsBuilder.fromUri(mainLink)
    .path("consents/{consent-id}/authorizations/{authorisation-id}")
    .buildAndExpand(pathVars);
...