我们在开发系统的时候,常常需要定义接口给第三方系统调用,目前我们组一个同事坚持把新增和修改定义为同一个接口,比如 api/saveOrUpdate ,我跟他说这是两个不同的业务,最好分开为两个接口,当然实现是可以实现,但我总觉得这样不符合接口的定义规范,请问我该怎么说服他,或者 V 友可以说服我的。
1
jason19659 2016-06-27 10:27:33 +08:00
这两个接口需要的权限不一样
|
2
Niphor 2016-06-27 10:34:08 +08:00
这个谁官大 谁说了算
但是 谁埋的坑,到时让谁自己去填 |
3
SoloCompany 2016-06-27 12:18:27 +08:00
mysql REPLACE 语句表示:你在说啥?
|
4
Ouyangan 2016-06-27 12:45:41 +08:00
分开 , insert,update 写一起的人脑子有屎.
|
5
9hills 2016-06-27 13:02:08 +08:00
这玩意没法说服。。。
|
6
rekulas 2016-06-27 13:25:52 +08:00
如果是按 restful 的风格来看 好像也不算什么太违规的问题
|
7
akira 2016-06-27 13:56:27 +08:00
INSERT ON DUPLICATE KEY UPDATE
当然了,具体还是要看你们的业务需求了。例如如果业务上有限定例如资料不可修改,那当然还是要分成两个来做了。 |
8
miracleyao OP @rekulas rest 风格的规范是 add 和 update 分开的
|
9
mercurylanded 2016-06-27 14:08:18 +08:00
如果实体的 key 是外部传过来的就没问题
如果实体是系统内生成的 key 不要这样写 |
10
miracleyao OP @mercurylanded 根据 key 是否为 null 来进行相应的操作。
|
11
rekulas 2016-06-27 16:17:08 +08:00
@miracleyao 是分开的 不过区别很小 method 和少个 id 的区别 rest 是把 id 加到 url 中 他定义同一个接口 api/saveOrUpdate 那应该是把 id 加到 post 参数中,这当然不算 rest 了,但是我觉得也不算太奇葩的方法
|
12
liamli 2023-05-07 19:09:09 +08:00
过于系统化和事无巨细的规范,会影响激发创新, 因为大家不用思考,只要按规章办事就行了。
|