Содержание

Использование файлов cookie

Менеджер файлов cookie Postman позволяет вам просматривать и редактировать файлы cookie, связанные с различными доменами. Вы можете вручную создать файлы cookie для домена или перехватывать файлы cookie с помощью прокси-сервера Postman или перехватчика Postman. Затем вы можете использовать файлы cookie, хранящиеся в контейнере для файлов cookie, при отправке запросов в Postman.

Чтобы отключить отправку файлов cookie с запросом, перейдите на вкладку Настройки запроса, затем выберите Отключить хранилище файлов cookie.

Компьютерный файл cookie более формально известен как HTTP-файл cookie, веб-файл cookie, интернет-файл cookie или файл cookie браузера. Это название является сокращенной версией “волшебного файла cookie”, который представляет собой термин, обозначающий пакет данных, который компьютер получает, а затем отправляет обратно, не изменяя его.

Файл cookie обычно содержит две части данных: уникальный идентификатор для каждого пользователя и название сайта. Файлы cookie позволяют веб-сайтам извлекать эту информацию, когда вы повторно посещаете их, чтобы они могли запомнить вас и ваши предпочтения и адаптировать содержание страницы для вас на основе этой информации. Без файлов cookie вам пришлось бы снова входить в систему после того, как вы покинете сайт, или перестраивать свою корзину покупок, если вы закрыли веб-страницу. Это делает файлы cookie важной частью работы в Интернете.

Чтобы управлять файлами cookie в Postman, откройте запрос, затем выберите Cookies (в разделе Отправить).

В окне Управление файлами cookie отображается список доменов и файлов cookie, связанных с каждым из них. Если вы хотите просмотреть файлы cookie для домена, которого нет в списке, вы можете добавить домен.

Чтобы добавить новый файл cookie для домена, выберите + Add Cookie. Создается предварительно сгенерированная строка cookie, соответствующая стандарту.

<cookieName>=<cookieValue>; path=/; domain=.domain.com; HttpOnly; Secure; Expires=Tue, 19 Jan 2038 03:14:07 GMT;

Postman поддерживает следующие атрибуты:

Чтобы обновить существующий файл cookie для домена, выберите файл cookie, который вы хотите отредактировать. Вы можете отредактировать любое свойство и выбрать Save для обновления.

Чтобы удалить домен и все связанные с ним файлы cookie, выберите кнопку «x» рядом с доменом. Чтобы удалить отдельный файл cookie, выберите выберите кнопку «x» его рядом с файлом cookie.

Когда вы добавляете домен в список разрешенных, доступ к файлам cookie для этого домена можно получить с помощью скриптов

Чтобы добавить домен в список разрешенных, выполните следующие действия:

  1. Откройте запрос, затем выберите Cookies.
  2. В окне Manage Cookies выберите Domains Allowlist.
  3. Введите домен, который должен быть разрешен, и выберите Add.

Вы можете программно создавать и удалять файлы cookie, вместо того чтобы полагаться на графический интерфейс. Это дает вам большую степень контроля над файлами cookie.

Первый шаг, который необходимо выполнить при любом виде операций с файлами cookie, - это создать файл cookie jar, объект, который будет содержать файлы cookie и методы, которые будут использоваться для работы с файлами cookie.

Чтобы создать cookie jar, используйте pm.cookies.jar() метод. Это создает объект, содержащий файлы cookie и методы для доступа к ним.

const cookieJar = pm.cookies.jar();

После создание cookie jar, вы можете поместить в него cookie. Установите файл cookie с помощью функции «.set()». Эта функция принимает URL-адрес, имя файла cookie и значение файла cookie:

// create a cookie
cookieJar.set(URL, cookie name, cookie value, callback(error, cookie));

Вы также можете установить «PostmanCookie» или совместимый с ним объект cookie, используя функцию «.set()»:

// create a PostmanCookie
cookieJar.set(URL, { name: cookie name, value: cookie value, httpOnly: true }, callback (error, cookie));

Чтобы получить файл cookie, используйте функцию «.get()». Эта функция принимает URL-адрес и имя требуемого файла cookie. Он возвращает значение файла cookie.

// get the created cookie
cookieJar.get(URL, cookie name, callback(error, cookie));

Получить все cookies

Чтобы получить все файлы cookie для определенного URL, которые находятся в cookie jar, используйте функцию «.GetAll()». Эта функция принимает URL-адрес и возвращает все файлы cookie для этого URL-адреса:

// get the created cookies
cookieJar.getAll(URL, callback(error, cookies));

Удалить cookie

Чтобы удалить файл cookie, используйте функцию «.unset()». Эта функция принимает URL-адрес и название файла cookie, который необходимо удалить:

// Delete the created cookie
cookieJar.unset(URL , cookie name, callback (error));

Удалить все cookies

Чтобы очистить все файлы cookie для URL-адреса, используйте функцию «.clear()». Эта функция принимает URL-адрес, для которого вы хотите удалить файлы cookie. Функция «.clear()» удаляет все файлы cookie для определенного URL, но не удаляет все файлы cookie в jar, поскольку в jar могут быть файлы cookie для более чем одного URL.

// delete the set cookies
cookieJar.clear(URL, callback (error));

Чтобы очистить все файлы cookie для URL-адреса «.clear()», а затем поместить файл cookie в контейнер для файлов cookie «.set()», используйте функцию обратного вызова.

Вызовы функций выполняются асинхронно. Используйте функцию обратного вызова, чтобы гарантировать последовательное выполнение функций:

cookieJar.clear(URL, (error) => {
    jar.set(URL, cookie name, cookie value, callback(error, cookie));
});

пример:

const cookieJar = pm.cookies.jar();
const URL = 'https://seller.ozon.ru';
cookieJar.clear(URL, () => {
    cookieJar.set(URL, { name: '__Secure-access-token', value: '3.42050561.73l1dWpyRaaoR1GGaTDugA.68.l8cMBQAAAABkP_EgFOJoVqN3ZWKrNzk2MDEyODQyNzAAgJCg.20191227224811.20230420014816.NTLiIhs6Ic63uxRVmltOg6M0jLxJ4T6pBC_AVnzf-U0' }, (err) => { if(err) {console.log(err)}});
    cookieJar.set(URL, { name: '__Secure-ab-group', value: '68' }, (err) => { if(err) {console.log(err)}});
    cookieJar.set(URL, { name: '__Secure-refresh-token', value: '3.42050561.73l1dWpyRaaoR1GGaTDugA.68.l8cMBQAAAABj4m4nAegHxaN3ZWKrNzk2MDEyODQyNzAAgJCg.20191227224811.20230420014438.MJkeeJ4U7l8l8a1nxcAi-ESmLb-KGeKjwgS_Lcfr8x4' }, (err) => { if(err) {console.log(err)}});
    cookieJar.set(URL, { name: '__Secure-user-id', value: '42050561' }, (err) => { if(err) {console.log(err)}});
});

Postman может перехватывать файлы cookie для браузера или клиентского приложения, используя прокси-сервер Postman или перехватчик Postman. Для выбранных вами доменов захваченные файлы cookie непрерывно синхронизируются с файлом cookie Postman jar. Это позволяет вам использовать любые сеансы аутентификации в вашем браузере или клиентском приложении для выполнения вызовов API в Postman.