Загрузка фотографий на сервер вконтакте

Обсуждение и помощь по вопросам взаимодействия с ВКонтакте API в IFrame-приложениях (JavaScript, PHP и т.д)
rodinandrey
Сообщения: 29
Зарегистрирован: 12 сен 2012, 15:26

Re: Загрузка фотографий на сервер вконтакте

Сообщение rodinandrey »

Vaylandt писал(а):Ребята, помогите!
Целый день убил на приложение закачивающее фотографии в альбом вконтака (( не получается!
Есть php скрипт в котором есть массив переменных формата $url[0]=http://serv.ru/image1.jpg; и есть айди альбома $AID=12903;
Помогите написать скрипт загрузки фотографий из массива ссылок в указанный альбом! Причем java script скрипт вызывать из php.

У меня даже не получается создать файл html с javascript чтобы загрузить хотябы 1 фтографию на сервер! На форуме ни одного полностью написанного, а не отрывочного примера с методами photos.getUploadServer и photos.save для загрузки в альбом группы ((( !!!


Если можно поподробнее! Форум весь перечитал ( видимо не хватает знаний ((
Очень буду признателен!!!
Как именно Вы грузите картинку? (есть на сервере, находится вне Вашего сервера, через форму загрузки изображения)?
Wow
Сообщения: 3
Зарегистрирован: 13 окт 2012, 16:54

Re: Загрузка фотографий на сервер вконтакте

Сообщение Wow »

Подскажите пожалуйста.

Со стороннего сайта через openApi делаю запись на стену. Все выходит отлично.

Код: Выделить всё

<script type="text/javascript" src="//vk.com/js/api/openapi.js"></script> <script type="text/javascript"> VK.init({apiId: *******});</script> <script type="text/javascript"> function vkpost(url) { VK.Auth.login( null, VK.access.FRIENDS | VK.access.WALL ); VK.api('wall.post', { message: url }, function (data) { }); }</script> <a href="#" onclick="vkpost('999');">разместить</a>
А вот загрузить перед этим фото на сервер ВК через photos.getWallUploadServer не выходит. Все примеры описанные выше почему то не работают. photos.getWallUploadServer не дает запрос вконтакту. Не подскажете, как притулить в моем коде выше photos.getWallUploadServer? Может быть дело в правах? Но, как я понимаю, через openApi вконтакту достаточно, чтобы юзер подтвердил свое согласие на постинг на стену.

Код: Выделить всё

VK.api('photos.getWallUploadServer',{uid:********}, function(datad){  if (datad.response)   {  $.post("uploadimage.php",{upsrv:datad.response.upload_url,upsl:"test.jpg"},function(datas){  datas = JSON.parse(datas);  if (datas.server)  {  //подтверждаем загрузку  VK.api('photos.save',{aid: datas.aid, server: datas.server, photos_list: datas.photos_list, hash: datas.hash}, function(dataf)  {  if (dataf.response)  {  }   else  {  }  });  }  else  {  }  });  }   else   { alert ($.post); //Срабатывает алерт }  });
Спасибо.
Аватара пользователя
Александр
Создатель сайта
Создатель сайта
Сообщения: 4574
Зарегистрирован: 27 сен 2009, 16:45

Re: Загрузка фотографий на сервер вконтакте

Сообщение Александр »

Wow

Код: Выделить всё

VK.api('photos.getWallUploadServer',{aid:********}
Или photos.getWallUploadServer вообще не вызывается?
Nyashka
Сообщения: 10
Зарегистрирован: 07 июн 2013, 16:05

Re: Загрузка фотографий на сервер вконтакте

Сообщение Nyashka »

Подскажите, обязательно ли для загрузки фото в профиль пользователя гнать это фото сначала на свой сервак, а оттуда - уже вконтакт? Если фото уже в двоичном формате (берется из элемента canvas). Получил адрес для загрузки изображения upl_url. Пробовал отправить POST-ом, но request.status ответа приходит 0.

Код: Выделить всё

pngimg=document.getElementById("canv").toDataURL("image/png");var args="photo="+pngimg;request.open("POST", upl_url, true);request.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=utf-8");request.onreadystatechange = serverResponse;request.send(args); 
В документации сказано о кросс-доменных запросах: http://vk.com/dev/api_requests Пробовал сгенерить подобный скрипт, только с POST, а не с GET - результат тот же.
Wow
Сообщения: 3
Зарегистрирован: 13 окт 2012, 16:54

Re: Загрузка фотографий на сервер вконтакте

Сообщение Wow »

Александр писал(а):VK.api('photos.getWallUploadServer',{aid:********}

Или photos.getWallUploadServer вообще не вызывается?
Вообще не вызывается, uploadimage.php не запускается. В чем причина понять не могу.
Ответить