RESTFul Client в Джерси каждый раз генерирует новый сеанс shiro (для аутентификации) - PullRequest
0 голосов
/ 17 апреля 2019

У меня есть api rest, у которого есть логин для аутентификации с использованием shiro. Например, при входе в систему из клиента postMan и попытке выполнить действие я отслеживаю сеанс shiro на стороне остального сервера, и он всегда один и тот же.

Кроме того, у меня есть Java-клиент, который использует Джерси для создания HTTP-запросов, но при его запуске я заметил, что у каждого вызова свой сеанс широ!

Создание клиента один раз при входе в систему:

            Client client = ClientBuilder.newClient();
            baseTarget = client.target(baseUrl);

Тогда в каждом звонке у меня есть что-то вроде:

        Invocation.Builder builder;
        builder = baseTarget.path(apiPath + "blabla")
            .queryParam("bla", bla)
            .
            .
            .
            .request(MediaType.APPLICATION_JSON);

    Response response = builder.post(Entity.json(null));

Как я могу гарантировать, что в каждом звонке будет один и тот же сеанс?!

1 Ответ

0 голосов
/ 18 апреля 2019

Вам нужно будет отправить включенный файл cookie сеанса (по умолчанию JSESSIONID).

...