我正在努力更好地理解REST(可能不是唯一一个:))
假设客户端和服务器之间存在这种交互:
CustomWindow
两个操作之间显然存在状态。即您无法在登录前发布。
REST如何处理这个问题?
让我感到困惑的是,它说everywhere REST假定为无状态:使用统一且预定义的无状态操作集
那么它在实践中会如何运作呢?
P.S。
这是另一个例子:
client send login to SO.
client sends create SO thread with a question regarding REST architecture.
状态介于1和2之间,因为在对其进行评论之前首先需要提问。
答案 0 :(得分:1)
当他们说REST应该是无状态时,这意味着api调用的结果不应该根据它之前的api调用而变化。跨越api调用保持状态限制了缓存,因此不被视为RESTful。
换句话说,您应该向每个请求发送身份验证令牌(或可能更改响应的其他信息)。
答案 1 :(得分:0)
无状态意味着客户端会话不会存储在服务器端。 会话信息可以存储在客户端,因此不依赖于服务器,任何客户端都可以调用服务器端的任何服务。因此,客户的状态需要每次都需要通过 在这里,您在服务器上的每个请求都是独立请求。