Использование APIConnection (getProfiles)

Только готовые уроки по использованию ВКонтакте API. Flash + PHP + API. НЕ IFrame!
LonelyANDRoid
Сообщения: 34
Зарегистрирован: 11 мар 2011, 16:06

Re: Использование APIConnection (getProfiles)

Сообщение LonelyANDRoid »

bodnar
всё-таки правильным вариантом оказалось следующее:

Код: Выделить всё

 vk.api('friends.get', { fields: 'uid, first_name, last_name, nickname' }, friendsGetSuccess, friendsGetFail); 
z1o
Сообщения: 15
Зарегистрирован: 07 апр 2011, 22:52

Re: Использование APIConnection (getProfiles)

Сообщение z1o »

Код: Выделить всё

C:\vk_api_connection\src\main.as(42): col: 13 Error: Access of undefined property result_tf.             result_tf.text = data[0]['uid'] + ' ' + data[0]['first_name'] + ' ' + data[0]['last_name'] + ' ' + data[0]['photo_big']; C:\vk_api_connection\src\main.as(48): col: 13 Error: Access of undefined property result_tf.             result_tf.text = data.error_msg; 
Че за ошыбки(
Аватара пользователя
Александр
Создатель сайта
Создатель сайта
Сообщения: 4574
Зарегистрирован: 27 сен 2009, 16:45

Re: Использование APIConnection (getProfiles)

Сообщение Александр »

z1o
У тебя нет поля с instance name "result_tf"
alienless
Сообщения: 1
Зарегистрирован: 26 июн 2011, 22:29

Re: Использование APIConnection (getProfiles)

Сообщение alienless »

Вопрос, а как это в тестовом режиме запускать?
Вроде добавил test_mode=1 в dataprovider.as, а не работает, пишет ошибку sid.

Код: Выделить всё

var request_params: Object = {method: method};      request_params.api_id = _api_id;      request_params.format = "JSON";      request_params.v = "3.0";      request_params.test_mode = "1";//me added!!!      if (options.params) {        for (var i: String in options.params) {          request_params[i] = options.params[i];        }      }...      variables['sig'] = _generate_signature(request_params);      variables['sid'] = _api_sid;      variables['test_mode'] = "1";//me added!!!      var request:URLRequest = new URLRequest();
где я забыл исправить еще? подскажите, плиз.
Аватара пользователя
Александр
Создатель сайта
Создатель сайта
Сообщения: 4574
Зарегистрирован: 27 сен 2009, 16:45

Re: Использование APIConnection (getProfiles)

Сообщение Александр »

alienless
test_mode использовался с API 2.0.
В API 3.0 локально тестировать можно подставив данные

Код: Выделить всё

             // для тестирования локально, вводим свои данные здесь и раскоменчиваем код            /*flashVars['api_id'] = 1728947;            flashVars['viewer_id'] = 1306422;            flashVars['sid'] = 'a1006fd1e8gb9bd669e1119280166bc6cb9110b8a111550333bf041301';            flashVars['secret'] = '7ef8l6a4p8';            */
В документации по API 3.0 про параметр test_mode не написано http://vkontakte.ru/developers.php?o=-1 ... 0%F1%20API
По API 2.0 писали.
Tolyaka
Сообщения: 17
Зарегистрирован: 14 апр 2011, 11:39

Re: Использование APIConnection (getProfiles)

Сообщение Tolyaka »

У меня все работает.

Только вопрос как работает защита в v3.0 ?
Если я даже не прописываю свой api_id а получаю его из flashVars
api_id = flashVars['api_id'];

И еще вопрос secret в v3.0 вообще пропал и не нужен?
Аватара пользователя
Александр
Создатель сайта
Создатель сайта
Сообщения: 4574
Зарегистрирован: 27 сен 2009, 16:45

Re: Использование APIConnection (getProfiles)

Сообщение Александр »

Tolyaka
Ты про секретный ключ приложения? Не нужен.
В 3.0 secret берется из flashvars и это уже другой secret.
Hudson
Сообщения: 8
Зарегистрирован: 26 июл 2011, 09:40

Re: Использование APIConnection (getProfiles)

Сообщение Hudson »

вставил код в свой проект

TypeError: Error #1009: Не удается вызвать свойство или метод со ссылкой на объект "null".
at Main()

возникает при вызове
var flashVars:Object = stage.loaderInfo.parameters as Object;

что-то не так со stage? Почему null? Может раньше инициализации stage вставил? После каких действий со stage надо вставлять данный код?

Компонент добавил, в Main основной код скопировал, после Main сразу вставил две функции обработки для getProfiles.
Аватара пользователя
Александр
Создатель сайта
Создатель сайта
Сообщения: 4574
Зарегистрирован: 27 сен 2009, 16:45

Re: Использование APIConnection (getProfiles)

Сообщение Александр »

Hudson
Посмотри после каких действий в коде урока - сразу при запуске.
Используешь контейнер? Пишешь код в классе или fla?
Hudson
Сообщения: 8
Зарегистрирован: 26 июл 2011, 09:40

Re: Использование APIConnection (getProfiles)

Сообщение Hudson »

Контейнер не использую. код пишу в классе, не в кадре.
Чистый урок получается - все ок.
Просто не пойму почему stage = null
в сети искал - пишут что надо листенеры ставить, чтобы слушал когда stage загрузится
пока Displayable-объект не добавлен на сцену, свойство stage этого объекта очевидно равно null (сначала выполняется конструктор объекта)
Может надо сначала хоть один addChild вызвать?
Посмотри после каких действий в коде урока - сразу при запуске.
если я правильно понял, то
возникает при вызове
var flashVars:Object = stage.loaderInfo.parameters as Object;
//-------------------------------------------Конструктор класса-----------------------------------
public function Main() {
var flashVars:Object = stage.loaderInfo.parameters as Object;

у меня сразу идет вызов, первой же строкой.

Но так как чистый не имплантированный код работает, то это мои личные проблемы скорее всего :)
От нехватки знаний.

можно без вот этого колдунства
public function Main():void
{
if (stage) init();
else addEventListener(Event.ADDED_TO_STAGE, init);
}

private function init(e:Event = null):void
{
removeEventListener(Event.ADDED_TO_STAGE, init);
// Если тут написать твой код и немного пошаманить, то должно заработать.
}
с проблемой разобраться?
Ответить