![]() |
Загрузка фотографий на стену пользователя и IFRAME
Привет.
Тип приложения: - iFrame. Пытаюсь запостить фотографию на стену. Делаю всё по инструкции: Код:
1. С помощью метода photos.getWallUploadServer приложение узнает http-адрес для загрузки фотографии на стену текущего пользователя, другого пользователя или группы в зависимости от переданных параметров uid или gid. Код:
Error #2044: Необработанный securityError:. text=Error #2048: Нарушение изолированной среды: http://some-domain.ru/flash/bin-release/Main.swf не может загрузить данные из http://cs4316.vkontakte.ru/upload.ph...=1&wallphoto=1.П.С. Если Тип приложения выставить flash (не iFrame), всё работает. Подскажите решение для iFrame приложения. Спасибо. |
Нужно создать на сервере php скрипт, который будет загружать фотографию в VK
|
вот скрипт
PHP код:
{"mid": "122716583", "gid": "0", "server": "10870", "photo": "", "hash": "5496f0769fe5e6002f2283668c9798c9"} поле photo приходит пустое |
Я тоже недавно запустил приложение где флешка в iframe и была такая же проблема. Решил ее способом который уже предложен выше.
Временно переключить в настройках приложение на flash и загрузить в дополнительные swf файлы флешку, которую и вставить в iframe. Тогда исключений безопасности не возникает и фотка грузится на стену. Правда единственное немного неудобно обновлять swf, так как не знаешь какая ссылка будет. |
да - тоже решил эту проблему тем же способом. Но надо научиться делать это и с помощью php. За Iframe будущее. скоро все социальные сети могут перейти именно к этой системе
|
А $_POST идет из флешки? Она же не может передавать обычным постом текст и ByteArray.
Если $_POST['photo'] в Base64, то его надо декодировать вначале, а если это ByteArray, то его нужно доставать из $GLOBALS['HTTP_RAW_POST_DATA'] http://php.net/manual/ru/reserved.va...awpostdata.php |
да - не может передавать одновременно текст и картинку, - я такого способа не знаю по крайней мере.
Filename = photo.png photo = photo.png Upload = Submit Query такой пост образуется при передаче данных через MultipartUrlLoader эта часть данных в виде multipart а так - ото все biteArray спасибо! - ваш ответ мне оказался полезен. Будет время - поэкспериментирую Добавлено через 8 минут )как я передавал картинку и url по которому ее надо передать дальше? я посылал multipart c filename = myUrl, затем на сервере заменял его на photo.png затем отправлял дальше. наверное здесь я намудрил что - то) Еще использовал другой способ передавал post c двумя строковыми полями -url и byteArray. byteArray передовал символами от 0 до 9. например пробел я заменял на 032. Затем на сервере это все декодировал обратно этот метод мне тоже не помог) |
Вы бы попробовали у вас картинка до сервера вообще доходит?
Например разбить задачу на 2 - получить картинку из приложения и сохранить ее на сервере в файл, а потом прочитать картинку из файла и передать на контакт. Так хоть будет понятно на каком этапе проблема возникает |
До сервера доходит. Мои напарники сейчас как раз занимаются передачей картинки на сервер и сохранением ее на том же сервере. Как будет готово - сразу выложу результат здесь и ссылку на здесь там). или наоборот.
|
Думаю проблема в том, что cURL посылает не multipart.
Вот нашел ссылки в интернет http://vedovini.net/2009/08/posting-...ata-using-php/ http://apptools.com/phptools/forms/forms5.php ПС. Если получится, то поделитесь кодом. Тоже надо))) Добавлено через 32 минуты Вот на русском еще http://www.web-junior.net/otpravka-p...ravka-fajjlov/ |
спасибо за ссылки, когда найду истину, обязательно поделюсь, наверное эта тема пригодится многим)
|
Владимир, привет, как успехи?
|
Привет, истина рядом, у меня есть скрипт, который сохраняет картинку на другой сервер, его надо переделать, чтоб он передавал картинку на сервер контакта, вместо этого. На выходных постараюсь это сделать.
Суть такая: На свой сервер кидаем даннае, используя MultipartUrlLoader, на сервере достаем данные уже не из POST, откуда не помню - что-то вроде Files - там лежат битовые данные, вот их и нужно перекинуть на сервер контакта Добавлено через 7 минут на сегодняшний день iframe приложение у меня может размещать фото на стену контакта, но для этого нужно, чтоб swf, загружаемый через iframe лежал на vkontakte - там можно загружать дополнительные swf файлы. Если картинку постоянная - не генерируется во flash, то можно воспользоваться другим методом jsApi - загружать на стену фотки из альбома или из группы |
публикация картинки на стену vk.com
Я нашел ответ. на VK.com можно загрузить статические и динамические картинки. статическими называю те, которые никогда не меняются. Динамичесике - такие которые меняются, которых может быть очень много вариаций, например у меня есть домик 10 уровня из 10 и я хочу кинуть его скриншот на стену друга. Тоесть динамические - те, картинки, которых создаются в игре, затем преобразуются в картинку и кидаются на стену.
статические картинки можно разместить у себя в альбоме или в группе приложения и кидать на стену методом Код AS3:
этот метод есть как в iframe, так и во flash Затем я начал использовать функцию Код AS3:
http://vk.com/developers.php?o=-1&p=wall.savePost, она так же может использовать картинки, ранее за груженные на VK.com, либо картинки загруженные с использованием метода Код AS3:
Код AS3:
Код AS3:
в результате, после переброса картинки, сервер vk вернет данные в таком виде: Код AS3:
Код AS3:
Код AS1/AS2:
С этим методом могут возникнуть проблемы безопасности - security error, это возникает в том случает, когда swf вашего приложения лежит не на сервере vk.com, к примеру у вас есть загрузчик лежащий на vk.com, который грузит картинку с вашего сервера. эту проблему тоже можно обойти, но для этого нужно использовать ваш сервер на котором лежит php скрипт, которому будет передаваться картинка. ваш сервер получит картинку и сохранит ее на сервере vk.com. для php это не проблема, он не спрашивает про безопасность, в отличии от ActionScript(flash), и JavaScript. тут будет посложнее. дело в том, что серверный скрипт должен брать данные, которые вы ему передали не из GET и не из POST переменных. на сколько я знаю, он берет эти файлы из переменной Files, но я не силен в PHP, а готового скрипта у меня нет, чтоб вам кинуть пример. Я советую, хранить приложение на сервере vk.com Хотел написать скрипт сам, но времени нет. |
У меня есть вот такой рабочий PHP-код с curl'ом:
PHP код:
|
видимо, удалив
PHP код:
|
| Часовой пояс GMT +4, время: 15:46. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.