写接口时把变量写到路径和写成请求参数的区别是啥
写代码时有个疑惑,变量写到路径和作为请求参数有啥区别吗?
@GetMapping("group/{cid}")
public ResponseEntity<List<SpecGroup>> querySpecGroups(@PathVariable("cid") Long cid){
}
这个的请求是这样的
localhost:8083/spec/group/76
通常是作为参数
@GetMapping("group")
public ResponseEntity<List<SpecGroup>> querySpecGroups(Long cid){
localhost:8083/spec/group?cid=76
请问,除了url不一样外,有啥区别呢,为啥我看别人的代码有些查询接口id写到路径里,有些写到请求参数中?还是说这只是两种写法,效果完全一样?