在RESTful架构中,每个网址代表一种资源(resource),所以网址中不能有动词,只能有名词,而且所用的名词往往与数据库的表格名对应。一般来说,数据库中的表都是同种记录的"集合"(collection),所以API中的名词也应该使用复数。
GET /zoos:列出所有动物园
POST /zoos:新建一个动物园
GET /zoos/ID:获取某个指定动物园的信息
PUT /zoos/ID:更新某个指定动物园的信息(提供该动物园的全部信息)
PATCH /zoos/ID:更新某个指定动物园的信息(提供该动物园的部分信息)
DELETE /zoos/ID:删除某个动物园
那问题来了,登录接口怎么命名呢?
在RESTful架构中,每个网址代表一种资源(resource),所以网址中不能有动词,只能有名词,而且所用的名词往往与数据库的表格名对应。一般来说,数据库中的表都是同种记录的"集合"(collection),所以API中的名词也应该使用复数。
GET /zoos:列出所有动物园
POST /zoos:新建一个动物园
GET /zoos/ID:获取某个指定动物园的信息
PUT /zoos/ID:更新某个指定动物园的信息(提供该动物园的全部信息)
PATCH /zoos/ID:更新某个指定动物园的信息(提供该动物园的部分信息)
DELETE /zoos/ID:删除某个动物园
那问题来了,登录接口怎么命名呢?
<code>POST /logins/</code>
<code>get sessions/new 登录页面 post sessions/create 登录 post sessions/destroy 注销 </code>
把session 抽象成一种资源
RESTful只是一种命名建议,而不是什么规范,所以你用login/signup是没问题的,老板又不会因此扣你工资。
一定要这么精致的话建议换个思路
登录即获取授权
获取授权 这样说明白了吧
虽然我有时候也很想精致..不过该粗暴且无伤大雅的地方还是简单粗暴吧...因为活儿是大家合作干的..万一整的太高端搞得人家一脸懵逼就不太合适了...