Session 在Ktor中,会话和主体有什么区别?

Session 在Ktor中,会话和主体有什么区别?,session,api-design,ktor,principal,Session,Api Design,Ktor,Principal,我是服务器端开发的新手,我正在尝试在Ktor中构建一个API服务 我不理解Session和Principal之间的区别。 从我发现的示例来看,session和principal对象都用于存储有关调用方的信息,例如它们的userId等 如果会话达到了相同的目标,那么主体为什么存在? 我缺少什么?主体表示用户标识,即凭证的所有者。它可以是一个用户id、名称或其他东西 会话表示特定设备上的用户会话、用户交互会话。会话中可能没有用户信息。例如,您可以使用匿名会话而不进行登录 另一方面,如果用户从不同的设

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

我不理解Session和Principal之间的区别。 从我发现的示例来看,session和principal对象都用于存储有关调用方的信息,例如它们的userId等

如果会话达到了相同的目标,那么主体为什么存在?
我缺少什么?

主体表示用户标识,即凭证的所有者。它可以是一个用户id、名称或其他东西

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

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