Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > API приложений и сред

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 26.09.2011, 22:07
Drac0Sha вне форума Посмотреть профиль Отправить личное сообщение для Drac0Sha Найти все сообщения от Drac0Sha
  № 1  
Ответить с цитированием
Drac0Sha

Регистрация: Aug 2011
Сообщений: 50
По умолчанию getFriends как правильно вывести!?

Здравствуйте, хотел спросить как мне парсирить правильно
смотрел, сервер выводит
примерно в таком виде
{""response":[{"uid":345345,"first_name":"NAME","last_name":"SURNAME"},{"uid":344545,"first_name":"NAME2","last_name":"SURNAME2"},...]

Код:
private function getFriends(): void
		{
			var offsetFriends:uint = 0;
			var friendsJ:uint = 0;
			var TimeOut:Timer = new Timer( 5000, 1 );
			TimeOut.addEventListener(TimerEvent.TIMER_COMPLETE, onTimerComplete); /
			// параметры которые будем передавать в запросе и которые нужны для формирования сигнатуры
			// параметры для формирования сигнатуры
			var request_params: Object = new Object();
			request_params.api_id = api_id;
			request_params.method = 'friends.get';
			request_params.format = 'XML';
			request_params.v = '3.0';
			request_params.fields = 'uid,first_name,last_name,photo_big,sex,bdate,city,country,education,sex';
			request_params.uids = viewer_id;
			
			// параметры для отправки запроса
			var variables:URLVariables = new URLVariables();
			// часть параметров берем из request_params
			for (var j:String in request_params)
			{
				variables[j] = request_params[j];
			}
			variables['sid'] = sid;// параметр sid нужно передавать в запросе, но он не используются при создании сигнатуры
			variables['sig'] = generate_signature(request_params);// генерируем сигнатуру. Функция generate_signature описана ниже.

			// подготавливаем запрос
			url_request = new URLRequest(api_url);
			// данные будем отправлять POST запросом
			url_request.method = URLRequestMethod.POST;
			// добавляем параметры в запрос
			url_request.data = variables;
			// отправляем запрос
			url_loader = new URLLoader  ;
			url_loader.addEventListener(Event.COMPLETE,getFriendsAPI);
			url_loader.load(url_request);
		}
		
		function getFriendsAPI( ):void
		{
			if( TimeOut.running )
			{
				TimeOut.reset();
			}
			TimeOut.start(); 
			VK.api("friends.get",  { uid:flashVars.viewer_id, fields:"uid,first_name,last_name", count:1000, offset:offsetFriends }, get1000Friends, onError );
				offsetFriends += 1000;
		}
 
		function get1000Friends ( data:Array ):void 
		{
			for( var i:uint = 0; i<data.length; i++ )
			{
			friends[friendsJ] = data[i];
			friendsJ++;
			}
			if( offsetFriends <= 9000 )
			{
			getFriendsAPI( );
			}
		} 
 
		function onTimerComplete( e:TimerEvent ):void 
		{
		getFriendsAPI(); 
		}

понимаю, что скорее всего спросил какую-то лёгкую тему, но надеюсь на помощь )

Старый 26.09.2011, 22:09
Inet_PC вне форума Посмотреть профиль Отправить личное сообщение для Inet_PC Посетить домашнюю страницу Inet_PC Найти все сообщения от Inet_PC
  № 2  
Ответить с цитированием
Inet_PC
 
Аватар для Inet_PC

Регистрация: Feb 2009
Адрес: Гы...поди, найди!
Сообщений: 853
Записей в блоге: 1
любая JSON библиотека. Например вот эта.
Хотя вы вроде указали xml, странно...
__________________
http://www.chessmax.ru

Старый 26.09.2011, 22:12
GBee вне форума Посмотреть профиль Отправить личное сообщение для GBee Найти все сообщения от GBee
  № 3  
Ответить с цитированием
GBee
 
Аватар для GBee

Регистрация: Jan 2009
Сообщений: 3,067
Записей в блоге: 3
Отправить сообщение для GBee с помощью Skype™
JSON это
__________________
Чтобы доказать, что вы не робот, причините вред другому человеку.

Старый 26.09.2011, 22:19
Inet_PC вне форума Посмотреть профиль Отправить личное сообщение для Inet_PC Посетить домашнюю страницу Inet_PC Найти все сообщения от Inet_PC
  № 4  
Ответить с цитированием
Inet_PC
 
Аватар для Inet_PC

Регистрация: Feb 2009
Адрес: Гы...поди, найди!
Сообщений: 853
Записей в блоге: 1
Да никто и не спорит, что это JSON, просто
Цитата:
request_params.format = 'XML';
а возвращается JSON, вот это странно ...
__________________
http://www.chessmax.ru

Старый 26.09.2011, 23:28
Drac0Sha вне форума Посмотреть профиль Отправить личное сообщение для Drac0Sha Найти все сообщения от Drac0Sha
  № 5  
Ответить с цитированием
Drac0Sha

Регистрация: Aug 2011
Сообщений: 50
согласен ) что странно )
но с getProfiles работает )

а можно пожалуйста по конкретней )
если допустим, не получится так как я сделал )
что с json библиотекой мне делать ) !?

Добавлено через 13 минут
на форуме посмотрел
Код:
		private function getFriends2():Array {
    		var fr:Array = new Array();
   			 var item:Object;
    		for( var i:int = 0; i< 10000; i++ ){
			item = new Object();
			item["uid"] = "uind"+i;
			item["first_name"] =  "firstname"+i;
			item["last_name"] =  "lastname"+i;
			fr[i] = item;
    		}
   			 return fr;
		}
это не решит проблему!? )

Добавлено через 20 минут
суть в том, что при нажатии на кнопку в приложении
выдаётся список всех друзей...и он может выбрать кому из них будет видна та или иная информация )

Старый 27.09.2011, 00:32
Inet_PC вне форума Посмотреть профиль Отправить личное сообщение для Inet_PC Посетить домашнюю страницу Inet_PC Найти все сообщения от Inet_PC
  № 6  
Ответить с цитированием
Inet_PC
 
Аватар для Inet_PC

Регистрация: Feb 2009
Адрес: Гы...поди, найди!
Сообщений: 853
Записей в блоге: 1
Примерно так:
Код AS3:
var data: Object = JSON.decode(url_loader.data);
var friends: Array = data ? data.response as Array : null;
if (friends)
{
	for(var i:int=0;i<friends.length;++i)
	{ 
		trace(friends[i].first_name);
	}
}
__________________
http://www.chessmax.ru


Последний раз редактировалось Inet_PC; 27.09.2011 в 00:40.
Старый 27.09.2011, 18:31
Drac0Sha вне форума Посмотреть профиль Отправить личное сообщение для Drac0Sha Найти все сообщения от Drac0Sha
  № 7  
Ответить с цитированием
Drac0Sha

Регистрация: Aug 2011
Сообщений: 50
извините, но я не силён во Флэше )
а куда именно!?
в getFriands2!?
результата никакого
и вообще честно говоря, мне не понятно, всё что здесь написано хватит для того чтобы он на экране выводил их или нет!?

Старый 27.09.2011, 19:37
GBee вне форума Посмотреть профиль Отправить личное сообщение для GBee Найти все сообщения от GBee
  № 8  
Ответить с цитированием
GBee
 
Аватар для GBee

Регистрация: Jan 2009
Сообщений: 3,067
Записей в блоге: 3
Отправить сообщение для GBee с помощью Skype™
По умолчанию и так ХМЛ
__________________
Чтобы доказать, что вы не робот, причините вред другому человеку.

Создать новую тему Ответ Часовой пояс GMT +4, время: 11:41.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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