我们正在构建一个多租户应用程序,它将用户记录存储在一个通用的" user“表中。每条用户记录都有一个tenantID,用于保持数据隔离。
我们将API公开给客户端,并且API对单个用户执行操作。
GET /api/users/{id}公开我们的表in似乎是不正确的,它是表中所有“用户”自动生成的主键。有没有更好的做法,比如为每个用户生成一个唯一的散列,并将其作为我们向客户端公开的"ID“?或者我们应该为表使用不同类型的主键,比如不公开增量计数的散列或复合主键?或者我们应该为每个客户端的用户创建一个递增的整数"ID“?谢谢!
发布于 2014-09-23 16:59:15
有一些不使用数据库自动生成的id作为资源标识符的原因:
用户不友好: GET /api//5463287 vs /api/users/bob
在这种情况下,资源标识符应该是具有语义的唯一字母数字(当这有意义时)
https://stackoverflow.com/questions/25977040
复制相似问题