问题描述
我正在创建一个餐厅评论应用。后端将有一个Spring Boot API服务器。 我可以在Spring Security中轻松地将无状态属性设置为:
{{1}}
现在最佳做法是什么?应该是有状态还是无状态?
如果它应该是无状态的,那么每个http api调用都需要重新认证,对吗? (我的意思是应用程序需要发送用户名和密码)。
谢谢。
解决方法
使API调用变为无状态有很多优点:
- 无状态使REST API的复杂性降低了,因为Web服务不需要维护客户端以前的交互
- 无状态API也易于缓存
- 无状态通过将API部署到多台服务器来帮助将API扩展到数百万并发用户
- Web服务可以独立处理每个方法请求
无状态API调用的缺点在于,Web服务需要在每个请求中获取额外的信息,然后进行解释以获取客户端的状态。
客户端可以使用tokens来调用这些与每个请求一起发送的API。