Предназначен для выполнения API методов, которые требует подтверждение действия от пользователя.
Метод предназначен для выполнения API методов, которые требует подтверждение действия от пользователя. Примером использования данного метода является приглашение друзей пользователя в игру (friends.invite) Для того, чтобы приглашения друзей не превращались в бесконтрольную рассылку по воле игры, данное действие требует подтверждения от пользователя. Для этого был создан метод jsapi.popup, который показывает пользователю страницу подтверждения действия для необходимого метода API. Шаблон под необходимый метод указывается в параметре template, например так:
http://www.appsmail.ru/platform/japimethod=jsapi.popup&template=friends.invite
Пример полного URL для friends.invite
http://www.appsmail.ru/platform/japi?mobile=1&method=jsapi.popup&template=friends.invite& app_id=725144&session_key=2678b74630d6400cd2f33c2df66180f6&vid=8947454280116039786&sig=7a808bce18d9f5b992b01053ed400fd0
В примере выше флаг mobile
сообщает о том, что необходима мобильная версия "окна".
Имя | Тип | Описание |
---|---|---|
method | string | всегда "jsapi.popup"; обязательный параметр |
template | string | значение friends.invite, friends.request или stream.post. Название метода, для которого отрисовывается окно; обязательный параметр |
appid | int | app_id - id приложения, которое вызывает jsapi.popup; обязательный параметр |
session_key | string | ключ сессии текущего пользователя; обязательный параметр |
sig | md5(uid + params + private_key). Подпись запроса по схеме клиент-сервер; обязательный параметр | |
vid | uid текущего пользователя; обязательный параметр | |
mobile | 0 или 1. Флаг, если true (значение отлично от нуля и пустой строки), то будет отображена версия страницы для мобильных устройств; обязательный параметр |
Подпись формируется по следующей схеме
sig = md5(uid + params + private_key)
где:
Рассмотрим на примере метода friends.invite.
$aParams = array( "method" => "jsapi.popup", "app_id" => 725144, // id приложения "session_key" => "92ccee31dff5d860189db227fe2179cc", // Ключ сессии пользователя "mobile" => "1", // нужна версия для мобильных телефонов "template" => "friends.invite" // Название нужного метода );
// UID пользователя $uid = "13876640649279258698"; // Конкатенация пар "ключ=значение" $params = "app_id=725144method=jsapi.popupmobile=1session_key=92ccee31dff5d860189db227fe2179cctemplate=friends.invite"; // Считаем md5 $sig = md5($uid . $params . $private_key);
$url = "http://www.appsmail.ru/platform/japi"; // Добавляем параметры, на основе которых посчитали $url .= "?method=jsapi.popup"; $url .= "&app_id=725144"; $url .= "&session_key=92ccee31dff5d860189db227fe2179cc"; $url .= "&mobile=1"; $url .= "&template=friends.invite"; // Добавляем подпись $url .= "&sig=" . $sig; // Добавляем VID (он же uid) $url .= "&vid=" . $uid;