Облачное хранилище Bitcasa представила API для разработчиков

в 0:23, , рубрики: Без рубрики
Облачное хранилище Bitcasa представила API для разработчиков

У меня есть две новости. Традиционно хорошая и плохая.

Хорошая новость

Вчера пришло извещение, что Bitcasa наконец-то запустила API, пока в бета-версии. Также представлены SDK на PHP и JAVA, которые опубликованы на GitHub. В дальнейшем обещают SDK для Python, iOS, Android, Ruby и других.

Сразу после регистрации дают 5 ГБ места, и можно за счет рефов (по гигабайту за установку) и других «квестов» получить до 20 бесплатных ГБ. За $99/год предлагается 1 ТБ, а $999/год — неограниченное место.

API позволяет выполнять следующие действия:

Каталоги

  • Просмотр списка
  • Создание
  • Удаление
  • Переименование
  • Перемещение
  • Копирование

Файлы

  • Загрузка
  • Скачивание
  • Удаление
  • Переименование
  • Перемещение
  • Копирование

А теперь плохая новость

Полез тестировать, и оказалось, что пока всё слишком сыро, да и есть откровенные фэйлы. Итак о замеченных недостатках.

Не замечено, как с помощью API получить имя пользователя и доступную/использованную квоту. Также неизвестно, есть ли какие-то ограничения по размерам файлов. Скачивание (download) поддерживает заголовок Range, соответственно позволяет скачать любой кусок файла. А вот с Upload традиционно для многих облачных хранилищ не так радужно, и загрузка (upload) частями или продолжение загрузки после разрыва связи невозможно.

Для авторизации приложений используется, что-то похожее на OAuth 2, но несовместимое с OAuth 2. Вот спрашивается зачем делать почти тоже самое, просто немного по другому назвать параметры? Вместо code использовать authorization_code, вместо client_secretsecret, вместо redirect_uriredirect, и т.д. Также отсутствует параметр state, который позволяет передавать различные данные из приложения на redirect. Имхо, за такое нужно гвоздь в голову разработчикам забивать… Ну есть же стандарт, зачем делать свой велосипед отламывая детали у готового, тем более не предлагающий никаких преимуществ? Ну не осилили реализовать OAuth 2 полностью, пусть хоть то, что есть будет совместимо. А теперь получается, что на всех хранилищах, которые используют OAuth 2 авторизацию, можно использовать один и то же модуль, а для Bitcasa нужен отдельный…

При попытке авторизации, постоянно требует ввести логин и пароль, хоть ты и залогинен уже. Также никаких сообщений о том, что какое-то приложение хочет получить доступ к вашим файлам и кнопочек разрешить или нет. Несмотря на наличие в параметрах приложения Redirect Uri, Bitcasa его игнорирует (возможно потому, что пока приложение в Sandbox) и переадресует на любой адрес указанный в запросе.

При этом используется только авторизация с использованием кода авторизация. Также несколько необычно то, что токен передается в строке запроса, как-то привычнее использовать заголовок Authorization.

Несмотря на то, что Bitcasa позиционируется, как защищенное хранилище с шифрованием на стороне клиента, каких-либо упоминаний о необходимости шифрования файлов перед загрузкой их с помощью API не замечено, в PHP SDK тоже никакого шифрования. Разве, что пути файлов в base64 кодируются.

В общем такое ощущение, что самое сложное для разработчиков API очередного облачного хранилища — сделать так, чтобы было максимально непохоже и несовместимо с API других хранилищ.

Будем надеяться, что описанные корявости в будущем поправят…

Автор: zapimir

Источник


* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js