0x01 结论
JSON无法传输二进制, 若需要在JSON中传输二进制, 可以对二进制进行编码:
1. HEX To HexString
2. base64编码
若直接传送二进制, 其中无法被UTF-8解码的字节将被替换.
Base64将会扩大30%的体积.
0x00 起因
我使用JSON提交了包含二进制的报文, 解析时发现很多字节被替换成为了`0xFFFD`, 分析得知所替换的字节, 均是UTF-8无法解析的.
JSON无法传输二进制, 若需要在JSON中传输二进制, 可以对二进制进行编码:
1. HEX To HexString
2. base64编码
若直接传送二进制, 其中无法被UTF-8解码的字节将被替换.
Base64将会扩大30%的体积.
我使用JSON提交了包含二进制的报文, 解析时发现很多字节被替换成为了`0xFFFD`, 分析得知所替换的字节, 均是UTF-8无法解析的.