【问题标题】:What is the difference between Session and Principal in Ktor?Ktor 中的 Session 和 Principal 有什么区别?
【发布时间】:2020-12-05 05:44:45
【问题描述】:

我是服务器端开发的新手,我正在尝试在 Ktor 中构建 API 服务。

我不明白 Session 和 Principal 之间的区别。 从我发现的示例看来,会话和主体对象都用于存储有关调用者的信息,例如他们的 userId 等。

如果 Session 实现了相同的目标,为什么还有 Principal? 我错过了什么?

【问题讨论】:

    标签: session api-design ktor principal


    【解决方案1】:

    Principal 表示用户标识,即凭证的所有者。它可以是用户 ID、姓名或其他内容。

    会话表示用户会话,特定设备上的用户交互会话。会话中可能没有用户信息。例如,您可以在没有登录的情况下进行匿名会话。

    另一方面,如果用户在不同的设备上使用您的服务,它将有多个会话,但用户将是相同的。

    【讨论】:

      猜你喜欢
      • 2014-06-27
      • 1970-01-01
      • 2019-08-25
      • 1970-01-01
      • 2016-02-14
      • 1970-01-01
      • 2020-06-05
      • 2023-03-21
      • 2011-05-06
      相关资源
      最近更新 更多