base64編碼後傳輸後+號變成空格

生產環境中發現base64解碼錯誤前端

下面定位問題:後端

系統流程:前端壓縮後產生byte[], 用base64編碼發送到後端,後端解碼後解壓縮。發現後端base64解碼錯誤。編碼

定位問題:打開debug日誌,比較前端編碼後的內容和後端接受到的內容,發現編碼後的+號變成了空格。url

字符經若是被urlencode後標準的base64中的/、 +會被轉成%xx
debug

解決方案:1.把空格替換成+號再解碼,2.用非標準的base64編解碼,它們將「+/」改成「_-」或「!_」等。日誌

相關文章
相關標籤/搜索