1.用go解析路由时,中间件里相对路由做统一处理,或者是对于一组路由做处理,只能挨个正则去匹配。要不就多写代码,侵入业务。
2.路由不可读。命名再不规范的话,抓包也痛苦,需要看代码才能理解这个接口是做什么的
和前端对接口时,
前端:接口名字是什么
后端:获取node
前端:接口名字叫什么?
后端:http method get 杠node杠node id
我这例子也不知道讲的明不明白,大家懂这个意思就行。
3.在做监控时,比如说要计算某个接口的qps,就需要按路由去分组。 此时依旧需要按路由去正则,把是同一个路由的,但是path里面的变量不一样的要归纳成一组,这又要写很多代码。
4.参数比较复杂的情况下,要解析path,query,body 3个地方
5.其他:以后想到了再补充
说下restful,个人感觉这个规范用于个人的开源项目是不错。 但是用于企业开发,企业是经常有人员流动,restful是不太好用的,因为每个人对restful的理解又不一样,又或者有的人根本没用过,这就导致很多接口很不合理,导致变得四不像,增加沟通成本,不如不用。
再比如restful其中之中的一点就是path里面用变量,在沟通,以及后端处理过程中都是比较麻烦的。
总结:
规范是死的,人是活的。
我没想到path里面用变量的任何优点,有点无语😓