Брелок PUT REST 415 - PullRequest
       24

Брелок PUT REST 415

0 голосов
/ 30 октября 2018

Я получаю следующее сообщение об ошибке при попытке CALL REST API Keycloak использовать HttpClient. Код следующий:

ServletRequestAttributes servletRequestAttributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();

HttpServletRequest request = servletRequestAttributes.getRequest();
String token = request.getHeader("X-Auth-Token");
String url = authUrl + "/admin/realms/fast/users/"+userId+"/reset-password";

CloseableHttpClient closeableHttpClient = HttpClients.createDefault(); 
HttpPut httpPut = new HttpPut(url);
httpPut.addHeader("Authorization", token);
httpPut.addHeader("Content-Type ", "application/json");


List<NameValuePair>list = new ArrayList<NameValuePair>();
list.add(new BasicNameValuePair("type", "password"));
list.add(new BasicNameValuePair("value",userPassDO.getNewPassword()));
list.add(new BasicNameValuePair("temporary","true"));

UrlEncodedFormEntity entity;
try {
    entity = new UrlEncodedFormEntity(list,"UTF-8");
    httpPut.setEntity(entity);
    CloseableHttpResponse response = closeableHttpClient.execute(httpPut);
    HttpEntity et = response.getEntity();
    InputStream in = et.getContent();
    int stat=  response.getStatusLine().getStatusCode();
} catch (UnsupportedEncodingException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
} catch (ClientProtocolException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
} catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}

В ответе после выполнения put put отображается ошибка

 "HttpResponseProxy{HTTP/1.1 415 Unsupported Media Type [Server: nginx/1.15.3, Date: Tue, 30 Oct 2018 09:13:03 GMT, Content-Length: 0, Connection: keep-alive] [Content-Length: 0,Chunked: false]"

У кого-нибудь есть идеи или сталкивался с этой проблемой?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...