开发 API 的时候 http method 应该使用 PUT、PATCH、DELETE 等协议还得直接用 GET、POST

55 天前
 Inzufu
如题,
感觉前三者好像更规范些,不过好像很少见有用除 GET 和 POST 外协议的接口。
8380 次点击
所在节点    程序员
142 条回复
maymay5
55 天前
post 走全部
lujiaxing
55 天前
视情况.
如果是系统内互相调用, 一般就是 get/post. 没啥必要搞什么 put delete...
如果是开放 API, 而且本身也比较简单 (例如只是开放个 WEB 接口给三方读写数据之类的), 可以用 RESTful API.

我个人是不喜欢 RESTful 这个风格的. 太简陋了, 对于一些复杂的业务接口来说, 要么把 URL 搞得极其抽象
(如: /api/v3/userrelationshipinorganization/7333/8964) 要么把接口拆散拆得跟被爆破了一样, 然后让前端做整合层.

无论哪种其实都很恶心.
IdJoel
55 天前
DELETE PUT 多好用,要不 URL 整那老长多难受
对接的开发一眼就能看出来接口是干啥的,多直观啊?
wangkun025
55 天前
我选择遵守 restful
caomu
54 天前
@seers
@OutOfMemoryError 这啥道理?
cmdOptionKana
54 天前
RESTful 是自找麻烦
lff0305
54 天前
以前做项目见过的:

客户有奇葩的防火墙/负载均衡,对于
1. 非 Get Post 请求,高峰期不能保证 QOS ,要对 Get Post 让路
2. 非 2XX 返回值,会把 response 封装成类似 upstream error:<原始的 body> 而且可能 body 还会被截断

所以为了适应客户把项目做下去只能全部 GetPost ,用 200 返回,再把错误信息放在 Body 里面
cmdOptionKana
54 天前
RESTful 就是非常典型的学院派风格,理论上很优雅,很美,但实践中弊大于利,碍手碍脚。
afxcn
54 天前
我们就用 RESTful 风格的,国内国外的项目也没遇到什么问题。
aragakiyuii
54 天前
MrDarnell
54 天前
还是要走 restful 规范,现在很多公司规定 post 其实是一种负责人能力低下的表现,但碍于自尊心,拒绝承认
layxy
54 天前
get,post,put,delete 四个都用,之前遇到过前端会吐槽说分不清接口,path 都一样容易调错
IvanLi127
54 天前
反正我们严格遵守 RESTful ,等保和安全都过得去。我感觉这些请求方法都挺常见的
wangtian2020
54 天前
都可以,市面上常见的两种接口风格
proxychains
54 天前
GET 查询
POST 新增
hash
54 天前
就像一楼说的,POST 一把梭是有他的原因的,但我仍然认为 POST 一把梭是傻逼
毕竟没有任何一个人一辈子只做政府外包
jonsmith
54 天前
我用 get 和 post ,请求数据用 get 、更新用 post ,也见过全部用 post 的,但是全部 get 应该做不到。
proxychains
54 天前
GET 查询
POST 新增
PUT 修改
DELETE 删除
bitmin
54 天前
大部分接口都很简单,省得想名字,/、/{id} GET POST DELETE PUT PATCH 对应增删改查多简单

复杂接口另说,当然是随机应变

还好我们接口都是自己用,除了老板没人指手划脚
me1onsoda
54 天前
现实的情况很复杂,一个新增的过程可能也有查询删除修改

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

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

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

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

© 2021 V2EX