restful 规范的一些疑问

在前后端分离的项目中使用 restful 路由,比如个人中心 /users/{id} 这样的 URL,如果客户端没有保存当前用户ID的话怎么办,这个{id}怎么传过去呢?

就算客户端存了 userId,那么如果需要在用户静态文档里展示用户中心的链接呢,不可能 http://域名/users/{id} 这样展示吧,因为用户看不懂,也不可能 http://域名/users/100 这样展示吧,因为每个用户的ID都不一样。

又比如用户登录 /login 这样的 URL,它也算是 restful 吗?如果是,那么这里的 login 算是个什么资源。如果不是,那我们使用 restful 又不能整站使用,那它还有什么意义,强迫症总想统一规范。

另外有没有其他能代替 restful 整站能够统一规范的?
这几天看别的站点发现这样的 Api URL:http://x.com/api/pay.member.info ,这种点点点的 URL 用的是什么规范?

《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 6

可以参考下 gayhub 的 api,,,

4年前 评论
h-o-o (楼主) 4年前
largezhou (作者) 4年前
h-o-o (楼主) 4年前
qinplain 4年前

graphql了解下 :grin:

4年前 评论
h-o-o (楼主) 4年前

识别用户身份的不一定是id,也可能是uuid,或者是token。资源通常是名词,见过用sessions,也有authorizations。并不是一定要用restful,只能说是目前最流行的一种规范,事实上很多公司还在用getpost一把梭。

4年前 评论
h-o-o (楼主) 4年前
Summer

个人中心可以用

/users/me

另外客户端没有保存的话,也可以让他们存啊,这不是很容易做到的吗!

login 可以使用

auth/login

或是:

sessions/create

网页的话 login 是为了让用户好理解,也没毛病。

4年前 评论

@Summer 好的,谢谢老大。

但总感觉 /users/me 这里的 me 好像不符合 restful 规范哦,现在我们用的就是 /users/me

auth/login 的话,auth 是单数,users 是复数,这样好像又有点乱吧。

总感觉 restful 这个东西有太多的不足哦。

4年前 评论
Summer 4年前
Summer 4年前
h-o-o (作者) (楼主) 4年前

只是尽量向RESTFul靠罢了,不可能完全规范的,就像你数据库设计不能完全遵循三范式一样

4年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!