restful 风格 api 的一些疑问 | go | go 技术论坛-大发黄金版app下载
给用户分配角色有如下两个设计
- post /api/v1/user/assign-roles - { userid: 1, roleids: [1,2,3] }
- /api/v1/user/:id/roles - { roleids:[1,2,3] }- 我喜欢第一种方式,原因有两个 - 参数全部在一起,后端一个结构体直接全部接收
- 后端的方法只需要一个入参参数,如下func (i *roleservice) assignroletouser(req *assignroletouser) error { ... }
 
第二种则需要两个参数,我不喜欢这种,不喜欢的原因如下(但是 gpt,豆包回答都推荐这种方式)
- 接收参数需要多一行代码去接收id,然后再接收参数
- 方法入参变成了两个
- 方法名称意义模糊
func (i *roleservice) assignroletouser(userid uint, req *assignroletouser) error { .... }
大家觉得哪一种更好,为什么?如果都不好,那么更好的应该是什么样子的?
                                
                                
                                    九九一十八,一步一个脚印
                                
                            
                        
                                             
 
推荐文章: