问答 302 重定向问题

疯的蜗牛 · 2018年05月12日 · 最后由 Ikaros灬 回复于 2018年05月14日 · 2533 次阅读

今晚测试一个项目的时候,遇到一个很离奇的问题:

把项目正式部署到服务器之后(前后端分离),在 wifi 环境下一切都正常, 在 4G 环境下,错误的请求都会被重定向。
比如: 登录接口

  1. 同样输入一个不存在用户名密码组合,在 wifi 环境下接口状态码 200,后端返回的信息都正常。 在 4G 环境下就会被重定向。
  2. 但是同样正确的用户名密码组合处理结果一致。

google 了一下,发现大多是说前端发送 ajax 请起的时候 数据类型时 jsonp 跨域的时候会自己修正为 get,这样的话显然时不符合第二点的描述的,而且我自己看前端的代码的时候发现并没有在调用这个接口的时候使用 get。

还有一种说法时 nginx http 强跳 https 会这样,但是这个项目都是 http 的。。

感觉应该是前端的问题,因为在 wifi 环境下 后段处理异常数据的时候返回是正常的,这样判断有问题吗?

之前后端都用 TP 框架多多少少能看懂一点,这一次新项目换了一个新的框架都看不懂代码怎么跑了。惭愧。。

不要问为什么不直接找开发,,,出于种种原因,暂时失联。。然后感觉问题也挺有趣的,拿出来求救 + 分享。

最佳回复

4G 让我想到了运营商 http 劫持。。再加上你们又不是 https 的。。原来支付宝阿里红包的时候,很多 http 劫持自动跳转领红包。

共收到 4 条回复 时间 点赞
5楼 已删除

那么请求是什么样子的呢?看不到猜不出来呀

4G 让我想到了运营商 http 劫持。。再加上你们又不是 https 的。。原来支付宝阿里红包的时候,很多 http 劫持自动跳转领红包。

Ikaros灬 回复

老哥你说对了,使用新的后端框架之后,凡事后端返回的 http 状态码为 403 的都被移动重定向到移动导航页了。。。,之前请求失败,status_code 均返回 200, 前后端处理异常的错误状态码都在接口返回的字段里面定义,这一次直接返回了真实的 http 状态码结果就拉闸了。

疯的蜗牛 回复

哈哈,所以还是换成用 https 吧,一个是 https 更安全,我在手机端浏览碰到 http 劫持的很头疼的。

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册