gifts2017

Загрузка изображений на Яндекс.Фотки (8.3)

Опубликовал Сергей Шимков (musly) в раздел Программирование - Практика программирования

Обработка позволяет загружать изображения на Яндекс.Фотки. Полностью работает на платформе 8.3. На 8.2 не сохраняет название фотки. Написана без использования внешних компонент.

В обработке указывается папка с изображениями, которые необходимо загрузить. Учитываются вложенные папки и создаются соответствующие альбомы (но у Яндекс.Фоток максимальный уровень вложенности - 5).  

Для получения сервисного документа от Яндекса используется WinHttp.WinHttpRequest.5.1. Во всех остальных случаях используются функции 1С.

 

Схема работы с Яндекс фотками через api:

- Авторизация и получение токена;

- Получение сервисного документа (в нем содержатся ссылки на коллекции альбомов и фотографий пользователя);

- Получение списка альбомов;

- Создание новых альбомов;

- Загрузка фотографии;

- Изменение имени фотографии (из 1С стандартными средствами можно загрузить фотку только простым POST-запросом, в котором не указывается имя файла). 

 

Документация по api фоток: http://api.yandex.ru/fotki/doc/concepts/About.xml

Скачать файлы

Наименование Файл Версия Размер Кол. Скачив.
ЯндексФотки
.epf 21,80Kb
26.11.12
36
.epf 21,80Kb 36 Скачать

См. также

PowerTools от 1 000
Подписаться Добавить вознаграждение

Комментарии

1. qweasd qweasdzc (serega3333) 21.02.13 16:58
Ошибка 403

redirect_uri должен быть не пустой

отправляю свой айди, что за ошибка?
2. qweasd qweasdzc (serega3333) 21.02.13 17:24
а какой Callback URI ставили в настройках апи?
3. Сергей Шимков (musly) 22.02.13 11:12
(2) serega3333, http://ya.ru/
Я не смог отловить событие начала загрузки страницы, поэтому вставил страничку поменьше, чтоб быстрее грузилась.
serega3333; +1 Ответить
4. qweasd qweasdzc (serega3333) 05.03.13 22:51
супер, у меня получилось от директа получить токен, вот только с json засада, у них там пост запросом отправляется

POST /json-api/v4/ HTTP/1.1
Host: api.direct.yandex.ru
Content-Length: 204
Content-Type: application/json; charset=utf-8

{
"method": "GetClientInfo",
"param": ["agrom"],
"locale": "ru",
"login": "agrom",
"application_id": "eef1c9fce4874819b8399bb0bac9b9d9",
"token": "e4d3b4d2a7444fb387a18dda54d1c8d9"
}

не пойму как правильно оформить в 1с такой пакет? не сталкивались?
5. qweasd qweasdzc (serega3333) 06.03.13 00:44
и подключаюсь и вроде файл отправляю с json оформленный а все равно -
{"error_detail":"Invalid JSON request","error_str":"Invalid request","error_code":501}
6. Сергей Шимков (musly) 06.03.13 09:29
Из 1С я отправляю запросы 2 способами - через стандартные функции и, где они не работают, через WinHttp.WinHttpRequest.5.1.
Заголовки отправили? Попробуйте еще через WinHttp, пример есть в процедуре ПолучитьСервисныйДокумент(). Там даже проще.
Хотя ошибка говорит, что неправильно сформирован запрос.
7. qweasd qweasdzc (serega3333) 06.03.13 09:38
(6) musly, ну да дело в JSON будь он не ладен...может кодировка может еще что-то...попробую пакет проанализировать который отправляется
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа