首页 > 解决方案 > 删除所有项目的宁静方式

问题描述

我正在为域管理员设计一个 API 来管理用户 cookie 会话,特别是

GET users/{userKey}/sessions获取用户所有会话的列表
DELETE users/{userKey}/sessions/{sessionId}删除用户的特定会话

我想为管理员公开另一种方法来删除(重置)用户的所有会话。我正在考虑 2 个选项,我想知道哪个更 Restful

  1. DELETE users/{userKey}/sessions- {sessionId} 留空以删除所有会话
  2. POST users/{userKey}/sessions/reset

标签: restapi-design

解决方案


这个答案可能是基于意见的,所以就这样吧。如果您要删除资源,我会使用DELETE(因为您要删除会话)。

如果您保留会话(但更改这些资源中的一些数据,例如滑动到期),那么我会考虑在您修改(重置而不是替换)现有会话时使用PATCH 。


推荐阅读