#java #rest #cookies
Вопрос:
Я выполняю вызов REST api на java и устанавливаю файлы cookie следующим образом:
response = httpClient.execute(httpPost, context);
HttpEntity e = response.getEntity();
responseString = EntityUtils.toString(e, "UTF-8");
ObjectMapper mapper = new ObjectMapper();
token= mapper.readValue(responseString, Example.class);
BasicCookieStore cookieStore = new BasicCookieStore();
BasicClientCookie cookie = new BasicClientCookie("auth_token", token.getToken());
cookie.setDomain(domain);
cookie.setAttribute(ClientCookie.DOMAIN_ATTR, "true");
cookieStore.addCookie(cookie);
context.setAttribute(HttpClientContext.COOKIE_STORE, cookieStore);
Я новичок в этом, поэтому я не уверен, но я думал, что смысл использования файлов cookie для хранения токена аутентификации заключается в том, что вам не нужно несколько раз звонить для входа в систему, чтобы каждый раз получать токен аутентификации, но все ресурсы, которые я вижу, показывают, что вы можете получить файл cookie только из ответа, что означало бы, что мне придется запускать приведенный выше код каждый раз, когда я хочу получить доступ к файлу cookie? Я обычно в замешательстве и хочу знать, как использовать файлы cookie, чтобы ограничить необходимость вызова маркера аутентификации каждый раз, когда мне нужно выполнить другой вызов API
Спасибо!
Комментарии:
1. если вы четко знаете, каким именно должно быть содержимое файлов cookie, вы можете создать его самостоятельно. в противном случае вы должны получить его из ответа сервера(сгенерированного сервером).