Cookie-сессия, как узнать, установлен ли сеанс, и проверить время ожидания - PullRequest
0 голосов
/ 01 мая 2019

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

HTTP/1.1 401 Unauthorized
WWW-Authenticate: Basic Realm="MyApp"

Это побудит браузер снова запросить учетные данные.

Для этого я использую

import cookieSession from 'cookie-session';
.
.
.
 app.use(
      cookieSession({
        name: 'Zipsession',
        keys: ['key1'],
        maxAge: 3600,
        httpOnly: false,
        secure: false,
        secureProxy: false,
      })
    );

Когда я смотрю на куки в браузере, ничего не было установлено дополнительно, когда я console.log (req)

cookies: {},
   signedCookies: {},
   sessionCookies: 
    Cookies {
      secure: undefined,
      request: [Circular],
      response: 
       ServerResponse {
         domain: null,
         _events: [Object],
         _eventsCount: 1,
         _maxListeners: undefined,
         output: [],
         outputEncodings: [],
         outputCallbacks: [],
         outputSize: 0,
         writable: true,
         _last: false,
         upgrading: false,
         chunkedEncoding: false,
         shouldKeepAlive: true,
         useChunkedEncodingByDefault: true,
         sendDate: true,
         _removedConnection: false,
         _removedContLen: false,
         _removedTE: false,
         _contentLength: null,
         _hasBody: true,
         _trailer: '',
         finished: false,
         _headerSent: false,
         socket: [Object],
         connection: [Object],
         _header: null,
         _onPendingData: [Function: bound updateOutgoingData],
         _sent100: false,
         _expect_continue: false,
         req: [Circular],
         locals: {},
         writeHead: [Function: writeHead],
         [Symbol(outHeadersKey)]: [Object] },
      keys: Keygrip { sign: [Function], verify: [Function], index: [Function] } },
   sessionOptions: {},
   sessionKey: 'Zipsession',
   session: [Getter/Setter],

Показывает, что куки пустые.

Как мне А) Установить сеанс Б) инициировать ответ 401, когда сеанс истекает

...