Клуб API Диска

(1С PUT) Загрузка на яндекс диск командой PUT из 1С

12 октября 2015, 16:36

Платформа 8.3.6

Пытаюсь загрузить на яндекс диск файл

Вот такой код

Токен = "Полученный токен";
Соединение = новый HTTPСоединение("webdav.yandex.ru",443,,,,,Новый ЗащищенноеСоединениеOpenSSL);
Заголовки = Новый Соответствие;
Заголовки.Вставить("Accept","*/*");
Заголовки.Вставить("Authorization", "OAuth "+Токен);
Запрос = Новый HTTPЗапрос("",Заголовки);

Файл = Новый Файл("C:\Users\alexander\Pictures\dd.jpg");
//Файл.Размер()
Ответ= Соединение.ВызватьHTTPМетод("PUT /22/1.txt HTTP/1.1
|Etag: "+ХЕШMD5("C:\Users\alexander\Pictures\1.txt")+"
|Sha256: "+Хеш("C:\Users\alexander\Pictures\1.txt")+"
|Expect: 100-continue
|Content-Type: text
|Content-Length:"+Файл.Размер()+"
|
|"+Новый ДвоичныеДанные("C:\Users\alexander\Pictures\1.txt"), Запрос);

сообщить( Ответ.КодСостояния);

 

--------------------------------------------

Код возврата 500

В чем может быть ошибка?

 

1 комментарий
Подписаться на комментарии к посту

Присоединяюсь, такая же штука получилась при попытке сделать папку публичной

 

Соединение = новый HTTPСоединение("webdav.yandex.ru",443,,,,,Новый ЗащищенноеСоединениеOpenSSL);

Заголовки = Новый Соответствие;

Заголовки.Вставить("User-Agent","my_app");

Заголовки.Вставить("Host","webdav.yandex.ru");

Заголовки.Вставить("Accept","*/*");

Заголовки.Вставить("Depth", 0);

Заголовки.Вставить("Authorization",ПарольКЯндексДиску);

Заголовки.Вставить("Content-Length","158");

 

 Запрос = Новый HTTPЗапрос("",Заголовки);

 

 Тело="

 |

 |

 |true

 |

 |

 |

 |";

 

Запрос.УстановитьТелоИзСтроки(Тело);

 Ответ = Соединение.ВызватьHTTPМетод("PROPPATCH /video HTTP/1.1", Запрос);

 Если Ответ.КодСостояния = 207 Тогда

  данные  = Ответ.ПолучитьТелоКакСтроку(); 

  ПолеВвода1=Данные;

КонецЕсли;

Код возврата 500....Никак не получается победить((