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