протокол HTTP GET и Put бинарных данных (вложения в CouchDB) из JavaScript
Мне нужно загрузить, отредактировать и загрузить (через HTTP PUT) двоичные Blob-объекты в CouchDB (в виде вложений) из браузера javascript CouchApp.
Мой google-fu не может найти ничего даже отдаленно похожего на это :/
Текущее решение предполагает использование Silverlight, и я хочу перейти на plain-js в современных браузерах (Safari, Mobile Safari (iOS), IE 9, Opera 11 и т. д.)
Есть решение для загрузки данных в Chrome (Post binary data cross domain В javascript ), но я не хочу придерживаться этого конкретного браузера.
1 ответ:
Javascript немного неудобен для работы с двоичными данными, но он все равно должен быть возможен.
Самый простой способ сделать это-использовать версию вложений CouchDB base64. Вы можете получить встроенные вложения в документе, а затем сохранить их обратно в виде встроенных вложений.
Вы можете использовать любую библиотеку Javascript base64 для их декодирования в браузере. CouchDB включает один как часть своего применения футона. Вы можете получить его из
/_utils/script/base64.js
.