弱网环境生成订单错误
2016-05-16 15:00 yoko8 阅读(421) 评论(0) 收藏 举报背景:今天公司网速特么慢,无意中用公司APP提交一张订单,N久无响应后提示”加载超时“,本以为订单没有成功,便点退出键想放弃下单,怎不知点击后弹出指示”购物车中无商品“,这句话引起了我的注意,于是后台查看,果然订单已经生成。。。
初步推断是弱网环境下APP没有提示下订单成功,但后台已生成订单,于是各种搜索得到了以下方法验证BUG,并与开发反应后BUG得到修正,现在总结分享一下
设置限速:
1.Fiddler-》设置-》自定义规则-》在打开的记事本中查找并更新以下:
if (m_SimulateModem){
// Delay sends by 300ms per KB uploaded.延迟发送300 ms / KB上传
oSession["request-trickle-delay"] = "3000";//此处输入需要延迟发送的时间,单位为毫秒
}
if (m_DisableCaching){
oSession.oRequest.headers.Remove("If-None-Match");
oSession.oRequest.headers.Remove("If-Modified-Since");
oSession.oRequest["Pragma"] = "no-cache";
}
// User-Agent Overrides
if (null != sUA){
oSession.oRequest["User-Agent"] = sUA;
}
if (m_Japanese){
oSession.oRequest["Accept-Language"] = "ja";
}
}
static function OnBeforeResponse(oSession: Session)
{
if (m_SimulateModem){
// Delay receives by 150ms per KB downloaded.延迟接收150 ms / KB下载
oSession["response-trickle-delay"] = "3000"; //此处输入需要延迟接收的时间,单位为毫秒
}
2.设置-》performance->勾选Simulate Modem speeds
测试:
打开Fiddler->监控对应测试手机-》指定监控主机-》手机操作到提交订单前一步-》设置限速-》提交订单
结果:限速为延迟发送3000 ms / KB时BUG重现了。
原因:IOS设置每发送接收一次时间为6秒(超过6秒提示超时),后台设置生成订单时间为10秒(10秒内响应的话生成订单),当响应时间在6-10秒时,后台操作生成订单,APP返回错误,两者处理不一至,导致BUG出现
处理方法:IOS设置响应时间与后台一样设置为10秒,10秒内响应的话APP与后台统一处理为生成订单,超过10秒的话统一处理为不生成订单。
浙公网安备 33010602011771号