需求:
产品希望我们的设备有两个版本,然后一个版本用来给用户体验,一个版本是付费使用的,大佬们定的方案是两个版本合二为一,虽然都在一个服务,但是接口出两份,前端是一份代码
不解:
其实后端知道前端当前的设备号,直接可以根据设备是否授权进行区分,自己在后面根据版本调不同的服务就行了,却把这个事情交给前端处理…
解决:
既然大佬们说这样做,小的也只能这样办了,但是一看发现交给前端处理还真有点难办呀
难点:
解决:
1.在根节点上加是否已经获取了版本号的判断(这样就不会关注与其他业务接口了),保证了第一个接口是版本号接口

2.获取版本号之后,在请求拦截器那里根据版本号去修改axios的baseURL

问题:
这种方式是我想到的最优解法,但是依然存在一些问题
eg:每次刷新一定会白屏,因为会走根节点的逻辑判断
建议解决方案:
后端去处理,根据设备的版本去调取不同的服务,前端不关心你的业务是体验版还是付费版,毕竟前端的路由和资源都是根据接口返回获取的