Spring REST URI:如何区分 b/w 用户和管理员

Spring REST URI: How to differentiate b/w user and admin

我有点困惑,需要帮助来理解我可以为用户定义 REST URI 的方式。

要求:我想实现如下目标:

  1. GET URI:/users/me/addresses:此 API 将仅由客户端调用 (iOS)。将从身份验证令牌中获取用户详细信息,返回的对象将排除某些字段。
  2. GET URI: /users/{userId}/addresses: 此 API 将由客户服务 WEB 门户调用,返回的对象将包含所有字段

为了实现这一点,我公开了两种方法,一种使用 URI“/users/me/addresses”,另一种使用“/users/{userId}/addresses”。然而似乎 Spring 认为 API 是相同的并且不允许这样做。所以我正在寻找一种替代方法来实现我的目标。

您可以使用正则表达式使 spring 认为这两个映射不同。参见 the documentation

@RequestMapping("/users/{userId:\d+}/addresses")