问题描述
- 登录成功后,页面异常
- 开发好后端的一部分代码后集成出现了问题,我启动gate-way的server,登录后请求后台的接口是404
矛盾点
- git pull 远程的代码,登录后页面无响应,但是可以的,我们用了同一份代码
- 我用postman来访问后端的接口,ok ,没有问题,但集成gateway后访问,就是404
问题解决
Q1:同一份代码,我的登陆后页面始终没有反应
A1:和小伙伴pair,一直没有解决,偶然尝试换个浏览器,结果好了。。。。怀疑是浏览器的缓存问题。。。
Q2:登录成功后单独访问后端没有问题,但加上gateway后就不行了,所以是gateway的问题吗?
A2:通过debug的方式进行调试,ok,发现路由的替换是没有问题的。那么问题到底在哪里?
Q3:对比postman的请求可以拿到数据的路由,和经过gataway变化后的路由,这个有什么区别吗?
A3:posman 访问的是id 为1的用户的数据,但gateway访问的是id为4的用户的数据。去数据库查看,果然没有id为4的数据,那返回的应该是空,状态码为什么会是404啊?去数据库查看,果然返回的状态码有问题。
Q4:我代码中数据的用户的id确实是1啊,为什么经过id的时候会变成4?
A4:真的感觉不能理解,就去找小伙伴问了,原来前端的id为1是假的,真的用户id会在gateway的时候传送给后端。为什么要设置一个假的id啊?小伙伴的解释是让路由看起来更符合restful的规范,晕。。。。
反思
表面上看起来是真的不一定真的是对的,一直以为前端写1是为了本地开发的方便,所以数据库接收到的也是1 ,所以被卡住了很久,调试的时候才发现这个问题。。。
action
如果访问发现页面无响应,或页面异常
- 首先检查url,我访问的端口是否已经开启
- 看log信息,是否后台报错或前台已经报错
- 都ok,诊断可能出现的原因,debug进行调试
- 第三步也是ok的,不妨换个浏览器或清清缓存
网友评论