Показать сообщение отдельно
Старый 28.03.2011, 17:44
SlavMFM вне форума Посмотреть профиль Отправить личное сообщение для SlavMFM Найти все сообщения от SlavMFM
  № 1  
Ответить с цитированием
SlavMFM

Регистрация: Feb 2011
Сообщений: 6
По умолчанию SecurityError: Error #2000 при использовании getVariable

Доброе время суток.
Пытаюсь вызвать метод "getVariable" посредством APIConnection (использую пример использования APIConnection из ВКонтакте):
Код AS3:
VK.api("getVariable", { key:1040 }, function(data:Object): void { tf.appendText("got variable = " + data.response.toString() + "\n"); }, function(data:Object): void { tf.appendText("Error: getVariable: " + data.error_msg + "\n"); } );
 
//или так, что тоже самое:
private function onGetVariableSuccess(data:Object): void
{
	tf.appendText("got variable = " + data.response.toString() + "\n");
}
private function onGetVariableFail(data:Object): void
{
	tf.appendText("Error: getVariable: " + data.error_msg + "\n");
}
VK.api("getServerTime", { key:'1040' }, onGetVariableSuccess, onGetVariableFail );
Получаю ошибку: "SecurityError: Error #2000: Отсутствует активный контекст безопасности."
Такая же ошибка возникает с методами "getServerTime" и "getVariables".
При этом, например, метод "wall.post" (что изначально есть в примере) работает.
В чём может быть дело?

Добавлено через 2 часа 21 минуту
Ну вот, после 5-часовой отладки, поковырявшись в их APIConnection увидел что в callback данные передаются уже как data.response, поэтому внутри callback'а снова получать response уже нельзя.
Но причём тут Security - вообще не понятно.

Добавлено через 24 часа 27 минут
А вот "putVariable" всегда выполняется с ошибкой.
Простое приложение с кодом:
Код AS3:
...
VK = new APIConnection;
VK.api("putVariable", { key:1040, value:" " });
Добавлено через 25 часов 23 минуты
Нашёл причину. При вызове APIConnection.api() нужно указывать оба параметра из функций обратного вызова, не смотря на то что по-умолчанию, якобы, поддерживаются нулевые (null) функции.
При получении результата от сервера и вызове функции обратного вызова возникает эта ( " SecurityError: Error #2000: Отсутствует активный контекст безопасности. " ) ошибка.


Последний раз редактировалось SlavMFM; 29.03.2011 в 19:08.