Как работает хранение токенов аутентификации в файлах cookie?

#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, вы можете создать его самостоятельно. в противном случае вы должны получить его из ответа сервера(сгенерированного сервером).