протокол 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 5

1 ответ:

Javascript немного неудобен для работы с двоичными данными, но он все равно должен быть возможен.

Самый простой способ сделать это-использовать версию вложений CouchDB base64. Вы можете получить встроенные вложения в документе, а затем сохранить их обратно в виде встроенных вложений.

Вы можете использовать любую библиотеку Javascript base64 для их декодирования в браузере. CouchDB включает один как часть своего применения футона. Вы можете получить его из /_utils/script/base64.js.