![]() |
![]() |
![]() |
|
VK API залить видеозапись | ☑ | ||
---|---|---|---|---|
0
Victor1c
06.06.15
✎
14:46
|
Вобщем пробую отправить видеозапись POST запросом, в ответ получаю = invalid file
Код такой вот РазделительСтрок = Символ(10)+Символ(13); Видео = (Новый ДвоичныеДанные("C:\*****\111.avi")); ИмяВходногоФайла = ПолучитьИмяВременногоФайла("in"); ИмяВходногоФайла1 = ПолучитьИмяВременногоФайла("in1"); ИмяВходногоФайла2 = ПолучитьИмяВременногоФайла("in2"); ИмяВходногоФайла3 = ПолучитьИмяВременногоФайла("in2"); ИмяВыходногоФайла = ПолучитьИмяВременногоФайла("out"); Boundary = СтрЗаменить(Строка(Новый УникальныйИдентификатор()), "-", ""); ВходнойФайл = Новый ЗаписьТекста(ИмяВходногоФайла1, КодировкаТекста.ANSI, Символы.ПС); ВходнойФайл.ЗаписатьСтроку("--"+Boundary); ВходнойФайл.ЗаписатьСтроку("Content-Disposition: form-data; name=""video_file""; filename=""111.avi"""); ВходнойФайл.ЗаписатьСтроку("Content-Type: application/octet-stream"); ВходнойФайл.ЗаписатьСтроку(""); ВходнойФайл.Закрыть(); Видео.Записать(ИмяВходногоФайла2); ВходнойФайл = Новый ЗаписьТекста(ИмяВходногоФайла3, КодировкаТекста.ANSI, Символы.ПС); ВходнойФайл.ЗаписатьСтроку(""); ВходнойФайл.ЗаписатьСтроку("--"+Boundary); ВходнойФайл.Закрыть(); МассивФайлов = Новый Массив; МассивФайлов.Добавить(ИмяВходногоФайла1); МассивФайлов.Добавить(ИмяВходногоФайла2); МассивФайлов.Добавить(ИмяВходногоФайла3); ОбъединитьФайлы(МассивФайлов, ИмяВходногоФайла); ФайлОтправки = Новый Файл(ИмяВходногоФайла); РазмерФайлаОтправки = XMLСтрока(ФайлОтправки.Размер()); WinHttp = Новый COMОбъект("WinHttp.WinHttpRequest.5.1"); Текст = Новый ТекстовыйДокумент; Текст.Прочитать(ИмяВходногоФайла, КодировкаТекста.ANSI); ЗП = Текст.ПолучитьТекст(); ФайлЗапроса = Новый Файл(ИмяВходногоФайла); РазмерФайлаОтправки = XMLСтрока(ФайлЗапроса.Размер()); WinHttp.Open("POST", АдресЗагрузки, 0); WinHttp.SetRequestHeader("Content-Type","multipart/form-data;boundary=" + Boundary); WinHttp.SetRequestHeader("Content-Length", РазмерФайлаОтправки); WinHttp.Send(Зп); Текст запроса такой получается --7e446ef309f34d50a9027c394a3b5279 Content-Disposition: form-data; name="video_file"; filename="111.avi" Content-Type: application/octet-stream Content-Transfer-Encoding: binary //Здесь данные файла --7e446ef309f34d50a9027c394a3b5279 Уже кучу времени убил. Не пойму что не правильно. Может у кого есть опыт по этому вопросу? |
|||
1
Victor1c
06.06.15
✎
15:18
|
Может Видео = (Новый ДвоичныеДанные("C:\*****\111.avi"));
|
|||
2
Victor1c
06.06.15
✎
15:18
|
Что нарушает, может есть другие способы потянуть двоичные данные?
|
|||
3
Victor1c
06.06.15
✎
15:19
|
Хотя похожий код, только отправка картинок - работает.
|
|||
4
Victor1c
06.06.15
✎
15:28
|
Если за комментировать МассивФайлов.Добавить(ИмяВходногоФайла2);
|
|||
5
Victor1c
06.06.15
✎
15:29
|
Тогда пишет ошибку no video file
Получается сам запрос сайт принимает |
|||
6
Victor1c
08.06.15
✎
09:48
|
Ни у кого нет опыта в данном вопрос?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |