Получение параметров (viewer_id и т.п.) в IFrame-приложении
Добавлено: 03 окт 2010, 16:15
Получение параметров (viewer_id, api_id, auth_key и т.п.) в IFrame-приложении
Если вы уже видели урок IFrame-приложение ВКонтакте. Вывод информации о пользователе и используете часть кода при создании своих IFrame-приложений, то эта информация может быть вам полезна.
В IFrame-приложение эти переменные передаются посредством GET-параметров запроса.
В коде из того урока я обрабатывал эти данные напрямую.
Чуть более детально изучив взаимодействие с ВКонтакте API из IFrame-приложения, а именно файл xd_connection.js, я узнал, что получить эти переменные можно более простым способом.
В том уроке был такой код:
При создании приложения вконтакте, после инициализации API, можно делать так:
Это практически то же самое, но функция обработки параметров уже записана в файле xd_connection.js. Создавать отдельную функцию, как в первом способе, нет смысла.
Оба эти способа работают, но второй более удобный. Рекомендую использовать его в своих приложениях.
Если вы уже видели урок IFrame-приложение ВКонтакте. Вывод информации о пользователе и используете часть кода при создании своих IFrame-приложений, то эта информация может быть вам полезна.
В IFrame-приложение эти переменные передаются посредством GET-параметров запроса.
В коде из того урока я обрабатывал эти данные напрямую.
Чуть более детально изучив взаимодействие с ВКонтакте API из IFrame-приложения, а именно файл xd_connection.js, я узнал, что получить эти переменные можно более простым способом.
В том уроке был такой код:
Код: Выделить всё
// узнаём flashVars, переданные приложению GET запросом. Сохраняем их в переменную flashVars var parts=document.location.search.substr(1).split("&"); var flashVars={}, curr; for (i=0; i<parts.length; i++) { curr = parts[i].split('='); // записываем в массив flashVars значения. Например: flashVars['viewer_id'] = 1; flashVars[curr[0]] = curr[1]; } // вытаскиваем viewer_id из полученных переменных var viewer_id = flashVars['viewer_id'];
При создании приложения вконтакте, после инициализации API, можно делать так:
Код: Выделить всё
VK.loadParams(document.location.href); var viewer_id = VK.params.viewer_id;
Оба эти способа работают, но второй более удобный. Рекомендую использовать его в своих приложениях.