JSON biçimi doğal olarak ikili veri desteklemez. İkili veriler, JSON'da bir dize öğesine (çift eğik çizgiler kullanarak sıfır veya daha fazla Unicode karakter) yerleştirilebilecek şekilde kaçmalıdır.
İkili verilerden kaçmanın bariz bir yöntemi Base64 kullanmaktır. Ancak, Base64 yüksek bir işleme yüküne sahiptir. Ayrıca 3 baytı 4 karaktere genişletir ve bu da veri boyutunu yaklaşık% 33 oranında arttırır.
Bunun bir kullanım örneği, CDMI bulut depolama API'sı belirtiminin v0.8 taslağıdır . Veri nesnelerini JSON kullanarak bir REST-Webservice aracılığıyla oluşturursunuz;
PUT /MyContainer/BinaryObject HTTP/1.1
Host: cloud.example.com
Accept: application/vnd.org.snia.cdmi.dataobject+json
Content-Type: application/vnd.org.snia.cdmi.dataobject+json
X-CDMI-Specification-Version: 1.0
{
"mimetype" : "application/octet-stream",
"metadata" : [ ],
"value" : "TWFuIGlzIGRpc3Rpbmd1aXNoZWQsIG5vdCBvbmx5IGJ5IGhpcyByZWFzb24sIGJ1dCBieSB0aGlz
IHNpbmd1bGFyIHBhc3Npb24gZnJvbSBvdGhlciBhbmltYWxzLCB3aGljaCBpcyBhIGx1c3Qgb2Yg
dGhlIG1pbmQsIHRoYXQgYnkgYSBwZXJzZXZlcmFuY2Ugb2YgZGVsaWdodCBpbiB0aGUgY29udGlu
dWVkIGFuZCBpbmRlZmF0aWdhYmxlIGdlbmVyYXRpb24gb2Yga25vd2xlZGdlLCBleGNlZWRzIHRo
ZSBzaG9ydCB2ZWhlbWVuY2Ugb2YgYW55IGNhcm5hbCBwbGVhc3VyZS4=",
}
İkili verileri JSON dizelerine kodlamak için daha iyi yollar ve standart yöntemler var mı?
JSON.parse
vb. Uygulamanın birçok yerinde bir darboğaz olabilir ......