Как мне преобразовать req.sessionID в connect.sid? - PullRequest
0 голосов
/ 09 июля 2019

Я вижу req.sessionID, это похоже на yeVIo68JZHLb9rvA3Js2MY6RMOo1p29S.

В консоли браузера я вижу connect.sid, и оно выглядит примерно так s%3AEsvCST_KXoCmyD1ixT1Elksp7WQU5Bwp.a1zlev0vJ0dNESbPCeOXZq3jsPAsAGCS7O0KTyrOTAU

Iвзглянул на библиотеку cookie-signature, и это не то же самое, что я вижу в connect.sid, так как в ней есть слово "привет".

var cookie = require('cookie-signature');
var val = cookie.sign('hello', 'tobiiscool');
val.should.equal('hello.DGDUkGlIkCzPz+C0B064FNgHdEjox7ch8tOBGslZ5QI');

Как мне конвертировать req.sessionIDдо connect.sid?

1 Ответ

0 голосов
/ 09 июля 2019
import * as crypto from 'crypto';

const getConnectSid = (sessionID) => {
  return 's.'+sessionID+'.'+crypto.createHmac('sha256', process.env.COOKIE_SECRET) .update(sessionID).digest('base64').replace(/\=+$/, '');
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...