360浏览器下载文件时二次提交请求

本文详细描述了一个在CCS20140328版本开发中遇到的bug,即360浏览器在提交表单时自动额外提交一次并携带空值,导致查询结果失效。通过分析代码和浏览器行为,最终定位问题并提出解决方案,包括判断浏览器自动提交情况并对查询结果进行相应处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

[color=blue][size=medium]在CCS20140328版本开发中,根据条件查询结果导出Excel数据的时候,IE下和其他常用浏览器也是正常的,唯独360浏览器不行。之后Debug发现,360浏览器不知道为什么总是老自动提交两次表单,而且第二次提交的表单默认的情况下传过去的是空值,也就是你自己选择的条件无效。这点差点让我崩溃,在网上搜了一天资料居然一点线索都没有,最后在我的代码中实在找不出问题了,于是把错误转向了浏览器,果不其然是浏览器的问题,360浏览器有个超级变态的功能,就是当你提交表单到服务器的时候,它会自动的“帮助”你提交一次,而且是带着空值的,结果程序在运算的时候,用第二次的表单值覆盖了前一次的表单值,查询完全失效。

更匪夷所思的是两次请求连session都不一样,完全是两个不同的浏览器请求,所以也无法把查询结果写到session,最后只能把查询结果放到全局变量中,在查询表单设置中设置一个隐藏域来判断是人为的提交表单还是浏览器自动提交表单,来对全局变量的值进行修改。[/size][/color]

[img]http://dl2.iteye.com/upload/attachment/0094/8146/33aa16fe-3db1-3072-901f-15edc7e08123.png[/img]

[img]http://dl2.iteye.com/upload/attachment/0094/8148/5ceb7e64-78fe-33e4-9389-739a9493c2ba.png[/img]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值