面试被问到 REST 规范优点怎么回答才能让面试官满意?

2021-04-29 21:07:55 +08:00
 zhoudaiyu

我回答的是资源的定义和访问方式比较清晰,然后面试官说不遵循 REST 规范也可以定义清晰,比如创建一个用户 /api/…/createUser 。然后我又说到了减少前后端交流沟通的成本,因为被操作资源的 uri 给了基本的增删改查的 url 都不用多说前端就能明白,然后他说那接口文档也可以。我竟然无言以对,好像没啥毛病啊。然后他让我下去仔细想想。可是我理解这本身就是就是个规范,又不一定谁都适合啊….不知道 REST 规范有什么别的好处,大家说说?

3290 次点击
所在节点    职场话题
33 条回复
drackzy
2021-04-30 07:27:56 +08:00
照着八股背说一遍,再结合自己的项目吹一遍。
baiyi
2021-04-30 08:42:52 +08:00
REST 不是规范,它是一种架构风格,是在许多种架构中组合推导出来的,它的优点就是这些架构所能带来的好处,最终形成的架构风格是能满足互联网规模的分布式超媒体系统的需求。
而 RESTful 风格的 API 设计具体能带来什么好处,还是要根据这些来理解的。
www5070504
2021-04-30 09:51:25 +08:00
照他那么说那是啥都没必要了 写文档被 这么爱写文档的公司还是别去了
www5070504
2021-04-30 09:51:48 +08:00
他好像不明白沟通成本的含义和写文档是多恶心的一件事
zgl263885
2021-04-30 10:15:27 +08:00
统一规范,易于理解,减少沟通成本,便于自动化生成文档及测试用例,可复用很多现成的轮子,为业务实现提供现成的解决方案。我能想到的。
MoRun
2021-04-30 11:02:11 +08:00
来龙去脉说清楚嘛,REST 怎么产生的 -> 为了解决啥问题 -> 优缺点 -> 使用上的一些点 -> 这个问题的其它解法的对比 -> 发展的趋势
bigShrimp8577
2021-04-30 16:52:23 +08:00
这就是揪字眼,没必要去。你是去干活的还是去吹牛逼的
leokino
2021-05-01 04:38:32 +08:00
REST 可以达成 convention over configuration,在一套约定俗称的框架下定义好了资源马上就知道对应 CRUD 的 api 怎么操作,比翻查文档节约的时间不止一个数量级。不要谈说复杂的 api 操作怎么处理,那就不是 rest 需要解决的问题。
456789
2021-05-02 13:03:35 +08:00
你俩说的都对把,但是 rest 更好
DoctorCat
2021-05-03 18:26:54 +08:00
@jadec0der 你喜欢 createUser 和 updateUser,但没有命名规范的话,你的小朋友同事可以搞出个 addUser 和 modifyUser,你觉得这种随意命名,会有利于项目发展?

我猜是你们维护的 API 太少了,所以才觉得使用路由命名表义无所谓甚至是更方便自己理解。
DoctorCat
2021-05-03 18:28:21 +08:00
@leokino
@zgl263885
严重同意这二位同志的意见。
Sparkli
2021-05-04 16:18:52 +08:00
对于我来说,如果都遵守这种风格,比如 elasticsearch api,我使用 GET 请求任意 URL 都不用怕做错什么事,避免脑子一热删库删表改数据
namelosw
2021-05-05 23:56:00 +08:00
REST 的核心是 HEATOAS,不过这个要杠也能杠
动词,也能杠
缓存,也能杠

我知道了,是共识… 大家好巧不巧都已经用上了 REST,毕竟「**的共识也是共识」,所以就没好死不死发明类似形式,不然文档还得专门多写几页解释

说到底 REST 就是玄学,别人说啥都能杠回去

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/774201

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX