Подключение к DROPBOX через REST API

28.12.17

Интеграция - WEB-интеграция

Обработка позволит подключить вашу конфигурацию к диску DROPBOX через публичный REST API сервиса. В ней есть графический интерфейс, поэтому можно проверить работоспособность до встраивания обработки в конфигурацию.

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Подключение к DROPBOX через REST API:
.epf 17,51Kb ver:1.0.1
15
15 Скачать (2 SM) Купить за 2 150 руб.

Возможности

  • OAuth-авторизация
  • Обзор файлов
  • Добавление папок
  • Загрузка файлов на Диск Dropbox
  • Скачивание файлов с Dropbox
  • Удаление файлов и папок

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

  1. Зарегистрируйте свое приложение в DROPBOX, включите необходимые права.
  2. Скачайте обработку.
  3. Загрузите обработку в конфигурацию или подключите ее через подсистему дополнительных отчетов и обработок из БСП.
  4. Получите код авторизации в личном кабинете Dropbox.
  5. Используйте процедуру "Токен" из модуля объекта обработки для обмена полученного кода авторизации на OAuth-токен или токен можно сгенерировать в личном кабинете Dropbox.
  6. Используйте программный интерфейс объекта обработки, модуль объекта содержит подробные комментарии.

 

ПРИМЕРЫ ИСПОЛЬЗОВАНИЯ

Инициализация

// Создаем объект из конфигурации

DropBox = Обработки. ОбменDropBox.Создать();

 

// Или создаем объект из подсистемы доп. обработок БСП 2.3

DropBox = ДополнительныеОтчетыИОбработки.ОбъектВнешнейОбработки(СсылкаНаДопОбработку);

 

DropBox.IDПриложения = Константы.IDПриложенияDropBox.Получить();

DropBox.ПарольПриложения = Константы.ПарольПриложенияDropBox.Получить();

DropBox.Токен = Константы.ТокенDropBox.Получить();

 

Просмотр и скачивание файлов

// Получаем список файлов

DropBox.СписокФайлов();

 

// Скачиваем файл

АдресФайла = DropBox.СкачатьФайл(РасположениеНаДискеDropbox);

ДанныеФайла = ПолучитьИзВременногоХранилища(АдресФайла);

ДанныеФайла.Записать(ВременныйФайл);

 

// остальные методы по аналогии

Особенности

  • Для работы нужна версия платформы 8.3.6.1977 и выше.
  • Используются кроссплатформенные объекты для работы с HTTP запросами, так что должно работать на Linux и Mac.

Т.к. не было найдено готового решения здесь, принял, как шаблон удачного примера Классный пример для Яндекса и реализовал только для сервиса Dropbox.

 

Спасибо, что дочитали до конца!

REST DROPBOX

См. также

Оптовая торговля Розничная торговля WEB-интеграция 1С:Управление торговлей 10 1С:Управление производственным предприятием 1С:Управление нашей фирмой 1.6 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Платные (руб)

Онлайн-заказ - это решение для автоматизации процесса оформления заказов на сайте в торговых организациях. Продукт обеспечивает легкое взаимодействие между компанией и клиентами через веб-интерфейс, интегрированный с 1С:Предприятие. Система позволяет снизить операционные расходы, повысить лояльность клиентов и оптимизировать работу отдела продаж.

57600 руб.

26.11.2024    1562    1    1    

4

Сайты и интернет-магазины WEB-интеграция Системный администратор Программист Пользователь Платформа 1С v8.3 1C:Бухгалтерия 1С:Управление торговлей 11 Автомобили, автосервисы Россия Управленческий учет Платные (руб)

Интеграционный модуль обмена между конфигурацией Альфа Авто 5 и Альфа Авто 6 и порталом AUTOCRM. Данный модуль универсален. Позволяет работать с несколькими обменами AUTOCRM разных брендов в одной информационной базе в ручном и автоматическом режиме.

36000 руб.

03.08.2020    18574    20    22    

18

Сайты и интернет-магазины Интеграция WEB-интеграция Платформа 1С v8.3 1C:Бухгалтерия Управленческий учет Платные (руб)

Интеграция 1С и Битрикс 24. Разработка имеет двухстороннюю синхронизацию 1С и Bitrix24 задачами. Решение позволяет создавать пользователя в 1С из Битрикс24 и наоборот. Данная разработка технически подходит под все основные конфигурации линейки продуктов 1С:Предприятие 8.3 (платформа начиная с 8.3.23): 1С:Управление торговлей, 1С:Управление Нашей фирмой 3, 1С:Комплексная автоматизация 2, Объединенное решение: Модуль 1С:CRM 3 (3.0.21.3) +1С:ERP Управление предприятием 2. При приобретении предоставляется 1 месяц бесплатных обновлений разработки. Доступна демо-версия продукта с подключением Вашего Битрикс24

7200 руб.

04.05.2021    20721    13    19    

18

WEB-интеграция Программист Бизнес-аналитик Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Оптовая торговля, дистрибуция, логистика ИТ-компания Платные (руб)

Модуль "Экспортер" — это расширение для 1С, предназначенное для автоматизации процессов выгрузки данных. Оно позволяет эффективно извлекать, преобразовывать и передавать данные из систем 1С в интеграционную платформу Spot2D. Подсистема упрощает настройку, снижает количество ручных операций и обеспечивает удобный контроль данных.

14400 руб.

20.12.2024    478    2    0    

5

Обмен с ГосИС WEB-интеграция Бухгалтер Пользователь Платформа 1С v8.3 Управляемые формы 1С:Комплексная автоматизация 1.х 1С:Бухгалтерия 2.0 1С:Управление торговлей 10 1С:Управление производственным предприятием 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия государственного учреждения 1С:Документооборот 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Платные (руб)

Обработка является альтернативой механизму, разработанному фирмой 1С и заполняющему реквизиты контрагента по ИНН или наименованию. Не требуется действующей подписки ИТС. Вызывается как внешняя дополнительная обработка, т.е. используется, непосредственно, из карточки контрагента. Заполнение по ИНН или наименованию реквизитов контрагента по данным сайта ФНС (egrul.nalog.ru) для БП 2.0, БП 3.0, БГУ 1.0, БГУ 2.0, УТ 10.3, УТ 11.x, КА 1.1, КА 2.x, УПП 1.x, ERP 2.x, УНФ 1.5, УНФ 1.6, УНФ 3.0, ДО 2.1

2400 руб.

28.04.2016    92199    184    217    

337
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Dzenn 901 19.10.18 11:44 Сейчас в теме
Спасибо огромное за обработку! Она прекрасна, и очень помогла, но есть нюанс:

Вместо конструкций вида

	Заголовки.Вставить("Dropbox-API-Arg", "{""path"": " + """" + Путь + """" + "}");


надо использовать

	ПЗ = Новый ПараметрыЗаписиJSON(ПереносСтрокJSON.Нет,,,ЭкранированиеСимволовJSON.СимволыВнеASCII);
	ЗД = Новый ЗаписьJSON;
	ЗД.УстановитьСтроку(ПЗ);
	ЗД.ЗаписатьНачалоОбъекта();
	ЗД.ЗаписатьИмяСвойства("path");
	ЗД.ЗаписатьЗначение(Путь);
	ЗД.ЗаписатьКонецОбъекта();
	Аргументы = ЗД.Закрыть();

	Заголовки.Вставить("Dropbox-API-Arg", Аргументы);
Показать


Это позволяет использовать кириллицу в именах файлов и гарантирует валидность JSON в любых других случаях.
men260181; acanta; +2 Ответить
2. men260181 22 19.10.18 15:37 Сейчас в теме
(1) Спасибо, приятель! Отличное дополнение, нет предела совершенству :)
3. Dzenn 901 19.10.18 15:39 Сейчас в теме
(2) пожалуйста ;-)
И ещё не хватило обработки параметра "Перезапись" в процедуре ЗагрузитьФайл(...)

Процедура ЗагрузитьФайл(Знач Путь, Знач АдресХранилища, Знач Перезаписывать = Ложь) Экспорт
		
	ИмяСервера = "content.dropboxapi.com";
	ОтносительныйURL = "/2/files/upload";
	
	Заголовки = СформироватьЗаголовки();
	
	Если Перезаписывать Тогда
		Перезапись = "overwrite";
	Иначе
		Перезапись = "add";
	КонецЕсли;
	
	ПЗ = Новый ПараметрыЗаписиJSON(ПереносСтрокJSON.Нет,,,ЭкранированиеСимволовJSON.СимволыВнеASCII);
	ЗД = Новый ЗаписьJSON;
	ЗД.УстановитьСтроку(ПЗ);
	ЗД.ЗаписатьНачалоОбъекта();
	ЗД.ЗаписатьИмяСвойства("path");
	ЗД.ЗаписатьЗначение(Путь);
	ЗД.ЗаписатьИмяСвойства("mode");
	ЗД.ЗаписатьЗначение(Перезапись);
	ЗД.ЗаписатьКонецОбъекта();
	Аргументы = ЗД.Закрыть();
	
	Заголовки.Вставить("Authorization", "Bearer " + Токен);
	Заголовки.Вставить("Dropbox-API-Arg", Аргументы);
	Заголовки.Вставить("Content-Type", "application/octet-stream");
	Заголовки.Вставить("Accept", "application/octet-stream");
	
	HttpЗапрос = Новый HTTPЗапрос(ОтносительныйURL, Заголовки);
	HttpЗапрос.УстановитьТелоИзДвоичныхДанных(ПолучитьИзВременногоХранилища(АдресХранилища));
	
	HttpСоединение = Новый HTTPСоединение(ИмяСервера, 443,,,,, Новый ЗащищенноеСоединениеOpenSSL);
	HttpОтвет = HttpСоединение.ОтправитьДляОбработки(HTTPЗапрос, "");

	ТелоОтвета = HttpОтвет.ПолучитьТелоКакСтроку(КодировкаТекста.UTF8);
	ОбработатьКодСостояния(HttpОтвет, ОтносительныйURL, ТелоОтвета);
	
	Чтение = Новый ЧтениеJSON;
	Чтение.УстановитьСтроку(ТелоОтвета);
	Ответ = ФабрикаXDTO.ПрочитатьJSON(Чтение);
	
КонецПроцедуры

Показать
4. user1432682 14.08.20 21:01 Сейчас в теме
Добрый день. ПОдскажите пожалуйста, как в форму список фалов загнать более 500. всю голову сломал:(
5. men260181 22 23.09.20 06:52 Сейчас в теме
Можно вызвать эту процедуру циклом по количеству файлов. Можно передать пути к файлам массивом, а в процедуре (переделать) циклом для каждого выполнить нужные действия.
Оставьте свое сообщение