今天遇到一個(gè)奇葩的問題,就是前端post到后端的base64保存成圖片顯示一半??!,感覺非常的奇怪,上傳小圖沒有問題,可是上傳大一點(diǎn)的圖片就不行了,一開始以為是圖片大小的問題,后來做了一個(gè)測(cè)試,就是把大圖的base64編碼復(fù)制到php頁(yè)面里執(zhí)行,執(zhí)行結(jié)果是沒有問題,可以顯示完整,這我就郁悶了! 回事什么原因引起圖片顯示一半的原因呢?后來問個(gè)一個(gè)朋友,出現(xiàn)這樣的問題,一般都是base64數(shù)據(jù)不完整,或出錯(cuò)了。后來一步一步的調(diào)試,重要找到原因了。在項(xiàng)目的主入口,為了安全,過濾了post過來的數(shù)據(jù),把某些特殊字符轉(zhuǎn)義了,哎。。。。大家在做html5圖片上傳的時(shí)候需要注意幾點(diǎn):1.在使用PHP進(jìn)行POST提交時(shí),文件大小受PHP配置文件(php.ini)限制,我們可以修改PHP.INI文件中的post_max_size參數(shù),可將默認(rèn)的2M字節(jié),修改自己需要的大小,但由于HTTP協(xié)議的特性,這個(gè)值不宜設(shè)置過大,最大以8M為宜2.提交后的base64編碼不要經(jīng)過任何過濾函數(shù)。最終還是把問題給解決了。