一个用户实例绑定到一个会话数据集

One user instance tied to one session dataset

我正在尝试使用会话为用户保存一组数据。如何将一个用户绑定到一个会话?或者它不是那样工作的?本质上,我如何确保一个客户端实例具有一组会话数据?我正在使用 React 和节点。到目前为止,这是我的代码:

main.ts

app.use(
  session({
    secret: 'secret',
    resave: false,
    saveUninitialized: false,
  }),
);

.service.ts

public async getCachedSelectedClient(
  session: Record<string, any>,
): Promise<string | undefined> {
  const { cachedClientId } = session;
  this.logger.log('cached client id', cachedClientId);
  return cachedClientId;
}

public async setCachedSelectedClient({
  session,
  cachedClientId,
}): Promise<void> {
  if (!cachedClientId) {
    return this.logger.log('No cachedClientId provided');
  }
  session.cachedClientId = cachedClientId;
  this.logger.log('set cached client response', cachedClientId);
}

如果我使用 postman,我会得到我设置的数据,但是当我尝试使用 swagger 获取数据时,我没有得到任何数据。这是否意味着它已经以某种方式绑定到一个请求源点?

原来 express-session 使用 cookie 将客户端连接到会话。简单且开箱即用 afaik