Мой Мир API - Вывод информации о пользователе

Готовые уроки по использованию API FaceBook, Мой Мир, Одноклассники и др.

Мой Мир API - Вывод информации о пользователе

Сообщение Александр » 10 июн 2010, 10:02

Мой Мир API - Вывод информации о пользователе
ActionScript 3.0 (Adobe Flash CS4)

UPD 5.11.2010
В методах Мой Мир API могли произойти изменения и приложение из этого урока может работать некорректно.


Приложение получает информацию о пользователе, просматривающем приложение, выводит его аватар, имя, дату рождения, город, пол, ссылку на страницу и показывает статус присутствия на сайте.

Урок создан для тех, кто хочет начать создавать приложения для социальной сети Мой Мир, но не знает с чего начать.


Описание используемого метода

users.getInfo
Возвращает анкетную информацию о пользователях, доступную текущему пользователю. Информация, которую текущий пользователь не может увидеть на странице запрашиваемых пользователей не будет возвращена.
uids - Список идентификаторов пользователей, разделенных запятыми, для которых мы получаем анкетную информацию. Не более 200 идентификаторов в одном вызове.

Для взаимодействия с API, необходимо передавать ряд обязательных параметров, а также параметров зависящих от метода API.
К обязательным параметрам относятся:
app_id - идентификатор приложения;
method - имя метода API который нужно вызвать;
sig - подпись запроса;

Идентификатор приложения app_id можно узнать при редактировании приложения в разделе Мои разработки.
Подпись запроса (сигнатура) sig запроса рассчитывается так:
sig = md5(vid + params + private_key)

vid - id пользователя, просматривающего приложение.
params - это конкатенация пар "имя=значение" отсортированных в алфавитом порядке по "имени", где "имя" - это название параметра, передаваемого в функцию API, "значение" - значение параметра. Разделитель в конкатенации не используется.
private_key - приватный ключ. Можно узнать на странице редактирования приложения в разделе Мои разработки.


Создание приложения

Для создания приложения понадобиться Adobe Flash, если у вас уже есть эта среда разработки, то можете продолжать читать урок.

1. Получаем необходимые даные для создания приложения.

- Заходим на сайт Мой Мир.
- Переходим на страницу "Приложения".
Изображение

- Кликаем на "Разработка приложений" в правой верхней части страницы.
Изображение

- Кликаем на "Создать приложение" - зеленая кнопка в правой верхней части страницы.
Изображение

- Читаем правила.
- Если внимательно прочитали правила, ставим галочку у "Я внимательно ознакомился с правилами" и нажимаем кнопку "продолжить".
Изображение

- Вводим название приложения, выбираем "Тип приложения: Flash". Нажимаем кнопку "Создать приложение".
Изображение

- Вы попадёте в раздел: "Разработка приложений".
Изображение
Здесь список приложений, которые вы создали. В левой части - ссылка на приложение в Моем Мире, по середине - элементы для управления приложением, справа - статистика.

- Кликаем на "управление".
Здесь вы можете изменить информацию о приложении.
При создании приложения, нам понадобиться ID и Private key.
Изображение


2. Запускаем Adobe Flash и создаём Новый документ.

File -> New -> Flash File (ActionScript 3.0)
Изображение

3. Добавляем на сцену:
- Динамическое текстовое поле.
Изображение

Называем его info_tf. (Window -> Properties)
Изображение
В это поле мы будет выводить информацию о пользователе.

- UILoader с вкладки COMPONENTS (Window -> Components).
Изображение

Называем его ava_ldr.
В это поле мы будем выводить аватарку пользователя.

Выделив этот комонент на сцене, на кладке PROPERTIES изменим его высоту и ширину.
Например:
W:150.0
H:380.0
Изображение

Получаем примерно такое:
Изображение

4. Сохраняем документ.

File -> Save

Создаем новую папку и сохраняем в неё fla файл. Можно изменить имя, например my_example.fla.


5. Создаем Новый as-файл, в котором будем писать код.

File -> New -> ActionScript File
Изображение


6. Пишем код.
  1. /*
  2.  
  3.     https://flapps.ru/forum/ - форум о создании флеш приложений с использованием API различных социальных сетей
  4.  
  5. */
  6. package {
  7.     import flash.net.URLLoader;
  8.     import flash.net.URLRequest;
  9.     import flash.display.*;
  10.     import flash.events.*;
  11.     import flash.text.TextField;
  12.  
  13.     public class Main extends Sprite {
  14.         private var app_id:Number=497353; // id вашего приложения
  15.         private var private_key:String="bf298185e1d0118c8e84b6fbca9aff1c"; // секретный ключ
  16.         private var vid:String;
  17.         private var session_key:String;
  18.         private var sig:String;
  19.         private var url_loader:URLLoader;
  20.         private var url_request:URLRequest;
  21.        
  22.         public function Main():void {
  23.             // узнаем id пользователя, просматривающего приложение
  24.             vid = LoaderInfo(root.loaderInfo).parameters.vid;
  25.             // узнаем session_key, необходимый для взаимодействия с API
  26.             session_key = LoaderInfo(root.loaderInfo).parameters.session_key;
  27.             // формируем подпись запроса (сигнатуру)
  28.             sig=MD5.encrypt(vid+'app_id='+app_id+'format=xmlmethod=users.getInfosession_key='+session_key+'uids=' + vid + private_key);
  29.             // составляем запрос к серверу API
  30.             url_request=new URLRequest("http://www.appsmail.ru/platform/api?method=users.getInfo&app_id="+app_id+"&format=xml&session_key="+session_key+"&sig="+sig +'&uids='+ vid);
  31.             url_loader=new URLLoader  ;
  32.             // действие, которое будет совершено после выполнения запроса
  33.             url_loader.addEventListener(Event.COMPLETE, onComplete);
  34.             // выполняем запрос
  35.             url_loader.load(url_request);
  36.            
  37.         }
  38.  
  39.         private function onComplete(event:Event):void {
  40.             // подготоваливаем полученный ответ для обработки
  41.             var responseXML=new XML(url_loader.data);
  42.            
  43.             // выводим полученную информацию о пользователе
  44.             info_tf.appendText('Информация о пользователе' + '\n');
  45.             info_tf.appendText('Имя: ' + responseXML..first_name + ' ' + responseXML..last_name + '\n');
  46.             info_tf.appendText('Дата рождения: ' + responseXML..birthday + '\n');
  47.             info_tf.appendText('Пользователь в сети: ' + (responseXML..is_online == 1 ? 'Да' : 'Нет') + '\n');
  48.             info_tf.appendText('Ссылка: ' + responseXML..link + '\n');
  49.             info_tf.appendText('Пол: ' + (responseXML..sex == 0 ? 'Муж.' : 'Жен.') + '\n');
  50.             info_tf.appendText('Город: ' + responseXML..location..name[0] + '\n');
  51.            
  52.             // загружаем аватар пользователя
  53.             ava_ldr.source = responseXML..pic_big;
  54.         }
  55.  
  56.     }
  57. }

Заменяем app_id на ID и private_key на Private key, которые мы узнали на первом этапе создания приложения.

7. Сохраняем as файл.
File -> Save
Сохраняем в ту же папку, в которую сохранили fla файл.
Назовём его "Main.as".
Из архива с исходником в конце этого сообщения, берем файл MD5.as и кладем в папку с Main.as.

8. Подключаем Main.as к проекту.
Выбираем вкладку с первым созданным документом, кликаем на пустом месте, чтобы снять выделение с элементов на сцене, и в PROPERTIES устанавливаем Class "Main" - созданный ранее as файл с кодом.
Изображение

9. Экспортируем приложение.
Нажимаем Ctrl + Enter. Запускается созданное приложение. Чтобы увидеть результат, его нужно загрузить в Мой Мир.
В папке с fla файлом появится swf файл. Его то и нужно загрузить в Мой Мир.


10. Загружаем приложение в Мой Мир.
- Заходим на страницу "Разработка приложений" http://api.mail.ru/app/my
- Выбираем "управление" у приложения, которое вы хотите загрузить.
- Переходим на вкладку "Настройки Flash".
- Загружаем swf:
Загрузить SWF-файл: с Вашего компьютера.
Нажимаем кнопку "Обзор" и выбираем swf файл.
Ширина: 550
Высота: 400
Если ваше приложение с другими размерами, то напишите их в эти поля.
Изображение
- Нажимаем "Сохранить".
- Приложение загружено в Мой Мир!
Теперь вы можете проверить его работу, зайдя на его страницу, клинув по его названию на странице Разработки приложений.

Если вы всё сделали верно, то увидите что-то похожее:
Изображение

Исходник Чтобы увидеть ссылку - зарегистрируйтесь


Урок по созданию подобного приложения для социальной сети Вконтакте здесь topic3.html

За это сообщение автора Александр поблагодарили - 4:
Doker, KIka_kok, Mustafin.M, Noise Gate
Аватара пользователя
Александр
Создатель сайта
Создатель сайта
 
Автор темы
Сообщения: 4574
Зарегистрирован: 27 сен 2009, 16:45
Откуда: Санкт-Петербург
Благодарил (а): 126 раз.
Поблагодарили: 771 раз.

Чтобы убрать блок с рекламой, зарегистрируйтесь на форуме или войдите.

Google
 



Re: Мой Мир API - Вывод информации о пользователе

Сообщение Doker » 10 июн 2010, 10:16

спс
my icq numbers: 403305362 и 484613
Аватара пользователя
Doker
Модератор
Модератор
 
Сообщения: 1026
Зарегистрирован: 07 май 2010, 18:53
Благодарил (а): 35 раз.
Поблагодарили: 52 раз.

Re: Мой Мир API - Вывод информации о пользователе

Сообщение Влад » 10 июн 2010, 21:07

Класс!
https://hrefs.ru - сервис крауд маркетинга №1 в 2019 году
Аватара пользователя
Влад
Модератор
Модератор
 
Сообщения: 654
Зарегистрирован: 29 апр 2010, 22:24
Благодарил (а): 26 раз.
Поблагодарили: 58 раз.

Re: Мой Мир API - Вывод информации о пользователе

Сообщение andrey.yankovich » 14 июн 2010, 12:13

2 Александр, данный пример можно подать на конкурс http://api.mail.ru/c2, до конца 14 июня…
andrey.yankovich

 
Сообщения: 48
Зарегистрирован: 27 апр 2010, 23:58
Благодарил (а): 1 раз.
Поблагодарили: 0 раз.

Re: Мой Мир API - Вывод информации о пользователе

Сообщение 112 » 14 июн 2010, 13:19

александр поспишите седня последнии день)))
Если ты дебил ,оставайся им!
Я бы изменил мир,но Бог не дает исходники!
Изображение
Аватара пользователя
112
Модератор
Модератор
 
Сообщения: 2215
Зарегистрирован: 02 фев 2010, 21:53
Благодарил (а): 51 раз.
Поблагодарили: 80 раз.

Re: Мой Мир API - Вывод информации о пользователе

Сообщение Александр » 14 июн 2010, 14:04

andrey.yankovich
112
Спасибо. Где-то 2 дня назад уже отправил)
Аватара пользователя
Александр
Создатель сайта
Создатель сайта
 
Автор темы
Сообщения: 4574
Зарегистрирован: 27 сен 2009, 16:45
Откуда: Санкт-Петербург
Благодарил (а): 126 раз.
Поблагодарили: 771 раз.

Re: Мой Мир API - Вывод информации о пользователе

Сообщение fly » 14 июн 2010, 17:06

Ах вот зачем всё так разжевано))
fly

 
Сообщения: 26
Зарегистрирован: 07 ноя 2009, 21:43
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Re: Мой Мир API - Вывод информации о пользователе

Сообщение Mustafin.M » 19 июн 2010, 18:05

Очень подробно описано, вау!
Mustafin.M

 
Сообщения: 166
Зарегистрирован: 09 май 2010, 08:49
Благодарил (а): 6 раз.
Поблагодарили: 10 раз.

Re: Мой Мир API - Вывод информации о пользователе

Сообщение andrey.yankovich » 22 июн 2010, 10:50

2 Александр
Известно ли что-нибудь о результатах конкурса? Уже 22 июня… на странице конкурса нет информации.
andrey.yankovich

 
Сообщения: 48
Зарегистрирован: 27 апр 2010, 23:58
Благодарил (а): 1 раз.
Поблагодарили: 0 раз.

Re: Мой Мир API - Вывод информации о пользователе

Сообщение Влад » 22 июн 2010, 11:59

прикиньте не могу маленькую иконку загрузить и по этому приложени ене принимают на модерацию
https://hrefs.ru - сервис крауд маркетинга №1 в 2019 году
Аватара пользователя
Влад
Модератор
Модератор
 
Сообщения: 654
Зарегистрирован: 29 апр 2010, 22:24
Благодарил (а): 26 раз.
Поблагодарили: 58 раз.

След.

Вернуться в Уроки по использованию API других социальных сетей



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0

cron