• ↓
  • ↑
  • ⇑
 
Записи с темой: user.get (список заголовков)
10:34 

Изменение в API

gluker
очень_очень_очень_много_букв_ без_пробелов
user.get - получение информации о пользователе
sid - идентификатор сессии
[userid] - идентификатор запрашиваемого пользователя, при отсутствии значения возвращается профиль текущего юзера
[fields] - список полей через "," которы необходимо получить, поумолчанию - все поля

ответ:
userid – идентификатор пользователя;
username – имя пользователя (логин);
shortname – короткое имя пользователя;
journal - тип дневника (0 – нет, 1 - дневник, 2 – сообщество);
country - страна проживания;
region – регион проживания;
city – город;
homepage – домашняя страница;
sex – пол;
education – образование;
sfera – сфера деятельности;
avatar – аватар;
joindate – дата регистрации;
email – эл.почта;
icq;
openid;
birthday – день рождения;
fav – избранные;
readers – постоянные читатели;
mycommunity.members – члены сообщества;
community.master – владелецы сообществ;
community.moderators – модератор сообществ;
community.member – член сообществ;

favs2 – избранные (userid, username);
readers2 – постоянные читатели (userid, username);
mycommunity.members2 – члены сообщества (userid, username);
mycommunity.masters2 – владелецы сообществ (userid, username);
mycommunity.moderators2 – модераторы сообществ (userid, username);
community.member2 – член сообществ (userid, journal_title);

interest – интересы;
about – о себе;

@темы: Тип: Изменение, user.get

09:55 

АльКорд
Метод user.get имеет на первый взгляд исчерпывающую информацию, судя по документации. Однако, на деле JSON-массивы fav, readers и mycommunity.members, community.master, community.moderator и community.member имеют только список ID. Оно, может быть, когда-то и удобно, однако, на деле оказывается не так.

Если мы хотим приблизительно воссоздать профильную страницу со списком избранных и ПЧ под общей информацией юзверя или страницу списка избранных, то, мы имеем список ID, да. Однако, чтобы вывести ники и названия дневников в аккуратном списке, потребуется 2*N запросов, где N - длина одного массива из этих шести. Можно, конечно, выводить список с пагинацией или реалтаймовой подгрузкой (только на странице списка избранного), как это сейчас модно, но, даже с пагинацией в limit=20, запросов на сервер улетит 40 штук, следовательно, возрастет нагрузка на сервер и время получения всей необходимой информации клиентом.

Вы не могли бы расширить эти массивы с простыми типами данных до JSON-обджектов примерного вида:

? В идеале бы ввести такое же необязательное поле fields, которое уже есть в этом методе, но для вот этих массивов, так как кроме моего такого желания есть желание другого человека, и ему важно в таком обджекте еще иметь дату последнего поста.

Или, как наиболее логичный вариант, завести дополнительный метод на получение такой информации. Во-первых, устоявшийся user.get не тронется, весь работающий код клиентов под его сигнатуру и возвращаемые данные не сломается. Во-вторых, такой метод можно вызывать только по надобности.

@темы: Статус: решено, user.get

@API

главная