1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
| 'use strict';
|
| const crc = require('crc').crc32;
|
| module.exports = {
|
| /**
| * Decode the base64 cookie value to an object.
| *
| * @param {String} string
| * @return {Object}
| * @api private
| */
|
| decode(string) {
| const body = Buffer.from(string, 'base64').toString('utf8');
| const json = JSON.parse(body);
| return json;
| },
|
| /**
| * Encode an object into a base64-encoded JSON string.
| *
| * @param {Object} body
| * @return {String}
| * @api private
| */
|
| encode(body) {
| body = JSON.stringify(body);
| return Buffer.from(body).toString('base64');
| },
|
| hash(sess) {
| return crc(JSON.stringify(sess));
| },
| };
|
|