Формат JSON спочатку не підтримує двійкові дані. Бінарні дані слід уникати, щоб вони могли бути розміщені в рядковому елементі (тобто нульовому чи більше символів Unicode в подвійних лапках з використанням зворотних косої риски) в JSON.
Очевидним методом уникнення двійкових даних є використання Base64. Однак Base64 має високі витрати на обробку. Крім того, він розширює 3 байти на 4 символи, що призводить до збільшення розміру даних приблизно на 33%.
Одним із випадків використання для цього є версія v0.8 специфікації API хмарного зберігання CDMI . Ви створюєте об'єкти даних через REST-веб-сервіс за допомогою JSON, наприклад
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=",
}
Чи є кращі способи та стандартні методи кодування бінарних даних у рядки JSON?
JSON.parse
тощо. ......