FAPI.Client.call

Функция используется для вызова REST-методов API.

Параметры

ПараметрТребуетсяОписание
paramsДаНабор пар ключ-значение для вызываемого метода (включая имя метода)
userCallbackДаФункция, которая будет вызвана после ответа сервера
resigНетТребуется, когда необходимо запросить подтверждение пользователя на какое-либо действие через отдельное превью. Во всех остальных случаях вызывайте функцию, указав только 2 параметра.

Функция userCallback имеет вид:

function(status, data, error) {
  /*
  * status = "ok" в случае успеха, "error" в случае ошибки;
  * data - объект-результат, например, ["565478477729"] для friends.get;
  * error = null в случае успеха, в случае ошибки это объект, содержащий описание и номер ошибки
  */
}

Примеры

Вызов без resig

/*
* Данная функция вызывается при успешной инициализации.
* Она содержит несколько примеров использования метода "FAPI.Client.call()".
*/
function initCard() {
    // сначала необходимо подготовить callback-функции (функции, которые будут вызваны после получения ответа)
    var callback_users_getCurrentUser = function(method, result, data){
        if (result) {
            fillCard(result);
        } else {
            processError(data);
        }
    };
 
    var callback_friends_get = function(method, result, data){
        if(result) {
            var randomFriendId = result[getRandomInt(0, result.length)];
            var callback_users_getInfo = function(method, result, data) {
                if (result) {
                    document.getElementById("random_friend_name_surname").innerHTML = result[0]["first_name"] + " " + result[0]["last_name"];
                } else {
                    processError(data);
                }
            }
            FAPI.Client.call({"method":"users.getInfo", "fields":"first_name,last_name", "uids":randomFriendId}, callback_users_getInfo);
        } else {
            processError(data);
        }
    }
 
    // а затем вызвать метод "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);
}