golang 編程中默認(rèn)使用的編碼是UTF-8
golang 編碼庫 mahonia 可以用作編碼的擴(kuò)展噪馏。 https://github.com/frank2019/mahonia
json中傳輸html的時候蛔溃,會自動對其中的< > 等符號進(jìn)行編碼轉(zhuǎn)義揣非,即HTMLEscape。 另一端接受使用的時候揽碘,需要對其轉(zhuǎn)換回來鸠踪。 一般json庫都會自動處理。但是如果自己解析json的時候,就需要注意處理了霉旗。
-
HTMLEscape 反轉(zhuǎn)義的處理痴奏,java 例子:
String str2 = str1.replace("\\u003c","<").replace("\\u003e",">").replace("\\u0026","&").replace("\\u2028","U+2028").replace("\\u2029","U+2029").replace("\\\"","\"");
func HTMLEscape
func HTMLEscape(dst *bytes.Buffer, src []byte)
HTMLEscape 函數(shù)將json編碼的src中的<、>厌秒、&读拆、U+2028 和U+2029字符替換為\u003c、\u003e鸵闪、\u0026檐晕、\u2028、\u2029 轉(zhuǎn)義字符串蚌讼,以便json編碼可以安全的嵌入HTML的<script>標(biāo)簽里辟灰。因為歷史原因,網(wǎng)絡(luò)瀏覽器不支持在<script>標(biāo)簽中使用標(biāo)準(zhǔn)HTML轉(zhuǎn)義篡石, 因此必須使用另一種json編碼方案芥喇。