最近在學習nodejs,在web前端傳參到後台時,發現中文亂碼,我所有檔案都是utf-8,html也指定了utf-8編碼,但還是亂碼。
google了一下,發現了這麼兩個函式encodeuricomponent(str),decodeuricomponent(str)。
在w3school上的解釋如下:
decodeuricomponent() 函式可對 encodeuricomponent() 函式編碼的 uri 進行解碼。
在本例中,我們將使用 decodeuricomponent() 對編碼後的 uri 進行解碼:
輸出:first/那麼nodejs亂碼的解決方法就很明了了。前端先用encodeuricomponent()進行編碼,後台用decodeuricomponent()解碼,就能得到正確的中文。
為什麼要對uri進行編碼再解碼呢,其中乙個原因就是我們現在遇到的問題,中文亂碼,為什麼會中文亂碼,因為如果uri的編碼格式採用的是ascii碼,而不是unicode,這也就是說你不能在uri中包含任何非ascii字元,例如中文。否則如果客戶端瀏覽器和服務端瀏覽器支援的字符集不同的情況下,中文可能會造成問題。
以上只是乙個解決方法,不知是否有其他更好的方法
Json陣列傳入後台亂碼問題解決
如果專案的編碼為gbk的話,就會導致json資料傳入後台時接受的為亂碼,在這裡我分享一下我這次的跳坑經歷 專案編碼 gbk 問題現象 1 filter中已經過濾了編碼設定 2 不管在 ajax 中是否設定contenttype,及如何設定,都會出現亂碼 解決方案 1.前台組裝json陣列push時使...
android向後台傳遞引數亂碼問題解決
在做android移動端開發的時候,難免會向後台傳送資料,有各種各樣的需求,相信大家在傳遞中文的時候,都遇到過亂碼此一類的問題。1.有的人說改伺服器配置 tomcat伺服器的sever.xml的connector節點,加入uriencodeing utf 8 字段。這個不能完全保證,我通過抓包工具發...
MySql 亂碼問題解決
最近連線mysql資料庫的時候,我也遇到了中文亂碼問題 呵呵,很頭疼哦!我用的資料庫是mysql5.0,所以,我先用google,baidu等上網搜了一下解決方案,自己也按著方法反覆測試了一下午,終於解決了我的jsp mysql5.0 tomcat 5.0.29出現的亂碼問題。解決方案如下 1 在d...