我最近非常热衷于尽可能地以RESTful的方式思考,但在非明显的路由方面遇到了困难。
在这种情况下,我想知道检查用户、或其他需要唯一性的内容(如电子邮件)的用户名可用性的RESTful方法。
我的直觉告诉我,我会想要在/users/email
或 /users/username/
上执行GET
,每个都有一个必需参数,或者类似于GET /users/search/
的内容,其中email
和username
是可选参数。如果收到200
,则username
或email
不可用;如果收到404
,则可用。
我更喜欢第一种选择,因为它更加明确,但并不像我已经仔细研究过Roy Fielding的论文那样了解该怎么做。
这里最合理的方法是什么?