Реализация API Яндекс.Диска для 1Script

Библиотека предоставляет возможность взаимодействия с REST API Яндекс.Диска на языке 1Script.

Реализована поддержка всех методов REST API Яндекс.Диска за исключением метода установки дополнительных (custom) свойств ресурсов (папок или файлов).

Установка

Для работы библиотеки необходимо oscript-yadisk предварительно установить Стандартную библиотеку скриптов 1Script.

Из исходников

  1. Клонируйте репозиторий библиотеки:

    git clone https://github.com/kuntashov/oscript-yadisk.git
    
  2. Добавьте в конфигурационном файле 1Script oscript.cfg в список дополнительных библиотек путь к каталогу, в который вы клонировали репозиторий:

    lib.additional = C:\libs\oscript-yadisk;
    

Из пакетов opm

opm install yadisk

Использование

Библиотека к вашему скрипту подключается с помощью директивы #Использовать yadisk. После этого в области видимости скрипта будет доступен класс ЯндексДиск:

#Использовать yadisk

Перем OAuth_Токен;

OAuth_Токен = "..."; // Используйте полученный токен для вашего приложения.

ЯндексДиск = Новый ЯндексДиск;
ЯндексДиск.УстановитьТокенАвторизации(OAuth_Токен);

СвойстваДиска = ЯндексДиск.ПолучитьСвойстваДиска();
Сообщить(СтрШаблон("Всего доступно %1 байт", СвойстваДиска.total_space));
Сообщить(СтрШаблон("Из них занято %1 байт", СвойстваДиска.used_space));

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

Примечание. В linux для корректной работы HTTPS-соединения может потребоваться выполнить команду

mozroots --import --sync

Запуск тестов библиотеки

Запуск тестов библиотеки осуществляется при помощи скрипта testrunner.os, который входит в состав исходных кодов 1Script (находится в папке tests).

OAuth-токен авторизации для запуска тестов

Для запуска автоматических тестов библиотеки необходимо тестам передать OAuth-токен авторизации.

Получить токен авторизации можно вручную, перейдя в браузере по ссылке вида:

https://oauth.yandex.ru/authorize?response_type=token&client_id=<ID приложения>

где <ID приложения> - идентификатор вашего приложения, зарегистрированного на Яндексе (https://oauth.yandex.ru/client/new).

Приложению необходимо назначить права на использование Яндекс.Диск REST API в том объеме, в котором необходимо для вашего приложения. Для целей запуска автоматизированных тестов необходимо указать все права (Доступ к информации о Диске, Доступ к папке приложения на Диске, Запись в любом месте на Диске, Чтение всего Диска).

Токен авторизации в тесты может быть передан либо через переменную окружения YADISK_OAUTH_TOKEN, либо через файл oauth_token.txt, в который надо сохранить полученный токен авторизации. Сам файл необходимо разместить рядом с тестами в папке tests.

Важно! Не рекомедуется запускать тесты для действующего аккаунта Яндекс.Диска, т.к. в процессе выполнения тестов выполняются различные операции над содержимым Диска. Рекомендуется для целей тестирования создать отдельную учетную запись на сервисах Яндекса и использовать ее.

Лицензия

Библиотека oscript-yadisk распространяется под лицензией Apache 2.0, ее текст находится в файле LICENSE. Лицензия распространяется только на код библиотеки oscript-yadisk. Использование API Яндекс.Диска регламентируется Условиями использования сервиса "API Яндекс.Диска" (https://yandex.ru/legal/disk_api/).

Доступные версии пакета

В разработке

Репозиторий

https://github.com/oscript-library/oscript-yadisk

Актуальная версия

yadisk-1.0.0