Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   API приложений и сред (http://www.flasher.ru/forum/forumdisplay.php?f=61)
-   -   Api вконтакте вопросы (http://www.flasher.ru/forum/showthread.php?t=165023)

nemoon 20.08.2011 00:54

Api вконтакте вопросы
 
Привет.


Постараюсь задавать вопросы как можно по понятней, тема создана для меня в целях помощи объяснений документации api с вконтакте





тек. стр. которую я разбираю вот:
http://vkontakte.ru/developers.php?o...F2%E0%EA%F2%E5


я сейчас все пытать понять что там(в доке вк) написано начиная с:

Цитата:

Каждому экземпляру приложения доступно до 4096 переменных (0-4095), в каждой из которых можно хранить строку из не более чем 255 байтов. Для каждого приложения (идентифицируемого api_id) эти переменные уникальны. Переменные инициализируются пустой строкой.

Во 1-ых.
- Это получается на каждое приложение создается БД(может не бд хотелось бы выяснить) "переменные уникальны"~е
Во 2-ых.
- 255 байт понятно, около 5 предложений максимум на каждую переменную.
в 3-их.
- Переменные инициализируются пустой строкой. - (не понятно)

Скрипун 20.08.2011 02:02

...и?

nemoon 20.08.2011 02:53

вопрос, когда чат делает requst метода getMessages

то в место ответа выходит такая ошибка

TypeError: Error #1010: Термин не определен и не имеет свойств.
at MethodInfo-429()
at MethodInfo-141()
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at flash.net::URLLoader/onComplete()

мда что за ошибка?

Добавлено через 31 минуту
ок причина ошибки найдена

я сделал пробный метод 'getMessages'

if($_GET['method'] == 'getMessages'){

этот ответ взят с док. вк

{"response":[{"user_id":"1","time":"1238709142","user_name":"Павел Дуров",
"message":"Привет"},{"user_id":"6492","time":"1238709175","user_name":
"Andrew Rogozov","message":"Как прошел день?"}]}

}



вот тогда выходи ошибка а когда пишут ответ просто

$api = '{"response":"1"}';

ошибки нет
744961 (02:24:24 20/08/2011)
и ошибка стала TypeError: Error #1010: Термин не определен и не имеет свойств.

Добавлено через 44 минуты
блин ** ошибка идетп осле ответа

Bgg 20.08.2011 09:17

Иии?...

nemoon 20.08.2011 15:25

вот код:
Код AS3:

    public function getMessages(first_start: Boolean) {
      var self:Object = this;
      var params: Object = new Object();
      if (first_start) {
        params['messages_to_get'] = 64; // get 64 both read & unread messages on the first start
      }
      params['session'] = _session;
 
      _data_provider.request(DataProvider.GET_MESSAGES, {
        params: params,
        onComplete: function(data) {
          var messages:Array = new Array();
          for (var i: String in data) {
          // var message_info = data[i].message_info;
            var message_info = data[i].message_info;
              if (message_info.message != "" && (message_info.user_id != self._user_info.user_id || first_start)) {
 
 
                var message: Object = {
                  user_id: message_info.user_id,
                  user_name: message_info.user_name,
                  time: message_info.time * 1000 + self._time_offset
                }
                if (message_info.message.substr(0, 2) == "%%") { // service message
                  message.message = message_info.message.substr(2);
                  message.service = true;
                } else {
                  message.message = unescapeMultiByte(message_info.message);
                }
                messages.push(message);
 
 
 
              }
 
 
          }
 
          if (messages.length > 0) {
            self._update_interval = self.UPDATE_INTERVAL_INIT;
            self._update_attempt = 0;
            var e = new DataAccessEvent(DataAccessor.MESSAGES);
            e.data = {messages: messages, first_start: first_start};
            dispatchEvent(e);
 
          } else {
            // calculate timeout before next request
            if (self._update_attempt > 1) {
              self._update_interval += 2000;
              self._update_interval = Math.min(self._update_interval, self.UPDATE_INTERVAL_MAX);
            }
            self._update_attempt++;
          }
 
          trace("Next update in " + self._update_interval + " milliseconds");
 
          // set timeout before next request
          self._timeout_id = setTimeout(function(){
            self.getMessages(false);
          }, self._update_interval);
        }
      });
    }

и ошибка
Код AS3:

TypeError: Error #1010: Термин не определен и не имеет свойств.
        at MethodInfo-415()
        at MethodInfo-141()
        at flash.events::EventDispatcher/dispatchEventFunction()
        at flash.events::EventDispatcher/dispatchEvent()
        at flash.net::URLLoader/onComplete()


andrew911 20.08.2011 16:11

Код AS3:

  var message_info = data[i].message_info;

У дата data[i] нет message_info.

В оригинальном примере чата вообще-то
Код AS3:

 
//var message_info = data[i].message_info;
var message_info = data[i];



Часовой пояс GMT +4, время: 20:02.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.