Сигнатура метода
Функция используется для вызова REST-методов API.
FAPI.Client.call(params, userCallback, resig)
Параметр | Требуется | Описание |
---|---|---|
params | Да | Набор пар ключ-значение для вызываемого метода (включая имя метода) |
userCallback | Да | Функция, которая будет вызвана после ответа сервера |
resig | Нет | Требуется, когда необходимо запросить подтверждение пользователя на какое-либо действие через отдельное превью. Во всех остальных случаях вызывайте функцию, указав только 2 параметра. |
Callback-функция
Функция userCallback имеет вид:
function(status, data, error)
Где:
- status - общий статус вызова метода. “ok” в случае успеха, “error” в случае ошибки;
- data - объект-результат. Например, [“565478477729”] для friends.get;
- error - информация об ошибке, возникшей при вызове метода. null в случае успеха, в случае ошибки это объект, содержащий описание и номер ошибки.
Пример вызова
/*
* Данная функция вызывается при успешной инициализации.
* Она содержит несколько примеров использования метода "FAPI.Client.call()".
*/
function initCard() {
// сначала необходимо подготовить callback-функции (функции, которые будут вызваны после получения ответа)
var callback_users_getCurrentUser = function(status, data, error){
if (data) {
fillCard(data);
} else {
processError(error);
}
};
var callback_friends_get = function(status, data, error){
if(data) {
var randomFriendId = result[getRandomInt(0, result.length)];
var callback_users_getInfo = function(status, data, error) {
if (data) {
document.getElementById("random_friend_name_surname").innerHTML = data[0]["first_name"] + " " + data[0]["last_name"];
} else {
processError(error);
}
}
FAPI.Client.call({"method":"users.getInfo", "fields":"first_name,last_name", "uids":randomFriendId}, callback_users_getInfo);
} else {
processError(error);
}
}
// а затем вызвать метод "FAPI.Client.call()", передав ему набор параметров и callback-функцию
// пример №1: вызов метода API с параметрами
FAPI.Client.call({"fields":"first_name,last_name,location,pic128x128","method":"users.getCurrentUser"}, callback_users_getCurrentUser);
// пример №2: вызов метода без параметров
FAPI.Client.call({"method":"friends.get"}, callback_friends_get);
}