昨天夜里上線了套餐列表頁(yè)二期新需求,其中有一項(xiàng)功能是離線化功能,因?yàn)檫@個(gè)功能只能在https環(huán)境下測(cè)試,而且覺(jué)得配置很簡(jiǎn)單,只做了demo單元測(cè)試而沒(méi)有做系統(tǒng)測(cè)試,就發(fā)布上線了。
所謂離線化功能,就是緩存用戶訪問(wèn)的信息保存在客戶端,當(dāng)用戶再次訪問(wèn)時(shí)可以直接打開(kāi)。
上午產(chǎn)品來(lái)找我說(shuō)部分安卓機(jī)器有問(wèn)題,抓包發(fā)現(xiàn)是請(qǐng)求方法不對(duì)(腳本里設(shè)置的是post卻用get請(qǐng)求),我偶然問(wèn)題機(jī)器的https的頁(yè)面有問(wèn)題 而http可以正常打開(kāi),感覺(jué)可能是離線化導(dǎo)致的,因?yàn)闃?biāo)準(zhǔn)規(guī)定離線化只有在https協(xié)議里運(yùn)行,我就想先取消掉離線化功能。離線化需要配置生效的域名和具體離線的規(guī)則,我將離線的規(guī)則匹配“meals”改為了空字符串,因?yàn)榭兆址黄ヅ淙魏沃担ㄆ鋵?shí)應(yīng)該用一個(gè)字段來(lái)控制,這是我太想當(dāng)然了),而離線化組件這里又沒(méi)有考慮空字符串匹配的情況,導(dǎo)致了剛進(jìn)入頁(yè)面就會(huì)崩潰。更加難過(guò)的是,離線化的配置規(guī)則已經(jīng)存儲(chǔ)到了本地,也就是說(shuō)即使線上改正常了,崩潰過(guò)的用戶點(diǎn)擊頁(yè)面會(huì)去加載錯(cuò)誤的離線化配置文件,導(dǎo)致永遠(yuǎn)崩潰。?
解決辦法是 找了一個(gè)app里流量大的i版頁(yè)面沖掉美食域名的錯(cuò)誤離線化配置。
覺(jué)得測(cè)試環(huán)境應(yīng)該有https協(xié)議。