Что такое "Транспорт сеанса / файлов cookie"? - PullRequest
0 голосов
/ 03 ноября 2018

Я создаю приложение с помощью ArangoDB.
В руководстве говорится, что есть что-то, называемое транспортировкой Cookie и транспортировкой сеанса. https://docs.arangodb.com/3.0/Manual/Foxx/Sessions/Transports/Cookie.html

Кажется, что они эквивалентны файлам cookie и сеансам, как те, которые вы получаете с модулями экспресс-сеансов. Однако я не могу понять:
1. Почему эти вещи называются «транспорт (ы)»?
2. Транспорт для файлов cookie выполняет те же функции, что и файлы cookie?
Я использую elixir / phoenix и другие веб-серверы для nginx, и эти серверы должны иметь доступ к файлам cookie.

1 Ответ

0 голосов
/ 07 ноября 2018

Транспорт - это тип объекта. Вы можете создать такой объект, как этот:

// use cookie based session
const cookieTransport = require('@arangodb/foxx/sessions/transports/cookie');
const myTransport = cookieTransport( ... );

// -OR-

// use header based session
const headerTransport = require('@arangodb/foxx/sessions/transports/header');
const myTransport = headerTransport( ... );

Вы можете использовать Транспортный объект myTransport, например, так:

sessionsMiddleware({ ..., transport: myTransport });

Подробнее см. https://docs.arangodb.com/3.3/Manual/Foxx/Sessions/.

Вы также можете передавать несколько транспортных объектов в виде массива в промежуточное программное обеспечение сеансов. Если вы не хотите изменять какое-либо из значений по умолчанию, вы можете передать transport: ['header', 'cookie'] для поддержки как файлов cookie, так и транспортных сеансов на основе заголовков.

Транспорт определяет, как идентификаторы сеанса должны обрабатываться на стороне клиента, будь то файл cookie, HTTP-заголовок или оба, которые должны использоваться для передачи идентификатора сеанса на сервер.

...