疑难杂症:记一个浙政钉+vue3遇到的问题

最近公司有一个项目,页面需要嵌套到浙政钉一个小程序里。

首先后端解决了单点登录(获取浙政钉用户,然后进行登录),前端这边只需要靠一个路由参数判断是否从浙政钉过来然后跳转中间页调登录接口。

实现之后客户那边反映,进页面时偶发404,然后退出重新进入可以正常跳转页面,但是页面数据没有出现,刷新就之后页面就正常了。问题了解,但是我们开发人员在自己手机上的浙政钉却一直没有出现这个问题,虽然也会遇到404,但是概率不大,客户那边属于出现404的概率倒是稳定地一直出现。不过最首先的是页面无数据的问题。

我们自己在单位捣鼓了好几次,后台接口都加日志,除了一个通用获取路由接口报错,说是没获取到登录权限信息,其他的接口的数据都正常返回。没获取到登录权限信息估计就是404的原因,但是不知道为什么没有获取到。页面无数据猜测指针和视图未更新,相应地改了,都无法真正解决问题。

最后只好到甲方,用客户的手机测试,症状是:第一次进页面不会404,但是页面没有数据,刷新就好了。日志接口无报错,但是接口传参有误不报错,第一次传参跟前端的初始化传参不对应。后面测试几次刚进页面之后就404,重新进就是页面没有数据的错误,刷新后又好了。日志显示获取路由接口报错,获取数据接口传参有误但正常返回数据。前提都是从小程序跳转的,直接从浙政钉的路由进入我们系统的页面是没有任何报错的。

加了个控制台调试,发现页面初始化onMounted里的接口都没调用,刷新就都调用了。搜了一下,没找到相关问题,根据vue官方文档,猜测是这个小程序页面挂载完成,然后router不起作用?因为第二次点进页面又是正常,这是因为重新挂载了?这个有时间再研究了,如果有大神路过知道能不能告诉小的!🙏

后面解决方法就是将onMounted里的方法都挪出来直接调用,页面无数据那个问题就解决了。

而404因为第一次不出现,后续测试的时候第一次进页面才出现的问题,看了一下代码逻辑,猜测是浙政钉自己缓存了权限信息,过了一段时间重新进页面时,其实是未登录的状态,但前端根据缓存信息以为是登陆状态直接跳转页面导致的404。这个就直接改那个判断缓存信息的条件就行了。

以上问题在PC端都没出现过。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值