hello 你好 我是大糉子。html
工做中的填坑就像知識同樣,得一步步來,就像我下面遇到的這個問題同樣。前端
結果 | 掃碼環境 | 生成環境 |
---|---|---|
沒問題 | 開發工具模擬 | 開發工具生成 |
有問題 | 本地和開發工具模擬 | 本地和開發工具模擬生成 |
有問題 | 線上 | 線上 |
從上線的小表格能夠看出本地模擬環境沒有問題,線上有問題,本地和線上互相生成和掃碼會存在問題,那麼問題相對就好找了。git
順着業務邏輯一步步確認下。canvas
前端在商品詳情中獲取到商品詳情以後,傳遞參數給後臺,後臺生成小程序碼的Base64數據再給前端,剩下的將html繪製成圖片的功能就是前端自主操做的了。小程序
商品詳情--》獲取小程序碼--》繪製canvas後保存圖片。後端
那麼先從小程序生成二維碼入手工具
嗯參數沒問題開發工具
拿着數據去解析下看看後臺給生成的對不對?(狗頭),用工具還原Base64圖片。測試
截圖保存下,去小程序驗證下,解析出來的數據和當時傳入的參數一致就放事後端開發一碼,優化
要麼 「哼」(前端小姐姐直問後端開發時的表情自行腦補)(狗頭)
居然和參數同樣,看來不能找後臺撕逼了。(無聊,沒有氣氛)哈哈哈。
細心的童鞋應想到,若是後臺給你的小程序碼數據沒問題的狀況下,只要這個數據正確使用了那麼問題確定不存在哈!
那麼就一步步證實下吧!沒辦法,線上環境打log也看不到,測試問題就直接toast或者直接輸出數據搞吧,誰讓開發工具模擬真實環境仍是有問題呢?
直接展現,暴力吧!
還有個地方我排錯處理了,就是轉圖片的時候每次生成一個臨時文件,名稱居然同樣,爲了排除插件功能中自己的問題我加上了時間戳,我可不想來一步一個標記,而後審覈提交線上後測試,都是時間啊,把有可能出問題的地方給他全堵死了。
感覺下測試這個問題必須線上環境的焦躁。最後一次審覈居然是半夜1:17 鵝廠不是強制6點下班麼?
<img src="https://gitee.com/stivepeim/img4mk/raw/master/20210621151306.png" style="zoom:50%;" />
能夠放心的掃碼到指定商品了。想不想知道這個商品是線上哪一個?
<img src="https://gitee.com/stivepeim/img4mk/raw/master/20210621151719.png" style="zoom:25%;" />
其實上面遇到的問題就純屬是坑,正常的使用過程當中環境複雜,但咱們都有一顆解決bug的心不是麼?
在上面的修改中我其實只是作了數據參數的確認和生成後的代碼優化和線上的確認而已。可是究竟是優化小程序解析數據生效了仍是添加臨時文件時間戳生效的還真沒確認,不過暫時對我來講不重要,後面有時間接着這個問題繼續玩。細心的童鞋也能夠幫我驗證下哈!
不怕脫髮的大糉子,沒有一扇門能一直擋住一個執着的人。加油。