API: различия между версиями

Материал из Энциклобогии
Перейти к навигации Перейти к поиску
Нет описания правки
Нет описания правки
Строка 1: Строка 1:
Сервер Годвилля предоставляет программный доступ к большинству данных героя, который можно использовать для написания сторонних программ.
Сервер Годвилля предоставляет программный доступ к большинству данных героя, который можно использовать для написания сторонних программ.


АПИ доступен в двух форматах (XML и JSON):
API доступен в двух форматах (JSON и XML):


  godville.net/gods/api/<username>.xml
  godville.net/gods/api/<username>.json
или
или (менее предпочтительно)
  godville.net/gods/api/<username>.json
  godville.net/gods/api/<username>.xml
 
По умолчанию в нем доступен только базовый набор сведений о герое, примерно совпадающий с содержимым персональной страницы. Если за героем хочется наблюдать в реальном времени, то необходимо включить в профиле игры галочку "Оперативные данные в API", добавляющую десять с лишним часто меняющихся полей наподобие инвентаря. При этом нужно учитывать, что любой желающий тоже сможет подглядывать за личной жизнью вашего героя.


Смысл большинства полей очевиден из их названия. Самое сложное:
Смысл большинства полей очевиден из их названия. Самое сложное:


* '''expired''' - показатель неактуальности данных. Для того, чтобы данные подавались в реальном времени, требуется периодическое (раз в час) посещение страницы героя или любая активность пользователя на ней. Если ''expired = true'', то герой не посещался слишком давно и остальные данные уже не актуальны ''(знаем, что неудобно, но пока только так)''.  
* '''expired''' - показатель неактуальности данных. Для того, чтобы данные подавались в реальном времени, требуется периодическое (раз в час) посещение страницы героя, любая активность пользователя на ней или посещение героя одним из полноценных клиентов. Если ''expired = true'', то герой не посещался слишком давно и остальные данные уже не актуальны ''(знаем, что неудобно, но пока только так)''.  


* '''diary_last''' - последняя запись из дневника героя.
* '''diary_last''' - последняя запись из дневника героя.

Версия от 07:24, 18 июля 2011

Сервер Годвилля предоставляет программный доступ к большинству данных героя, который можно использовать для написания сторонних программ.

API доступен в двух форматах (JSON и XML):

godville.net/gods/api/<username>.json 

или (менее предпочтительно)

godville.net/gods/api/<username>.xml 

По умолчанию в нем доступен только базовый набор сведений о герое, примерно совпадающий с содержимым персональной страницы. Если за героем хочется наблюдать в реальном времени, то необходимо включить в профиле игры галочку "Оперативные данные в API", добавляющую десять с лишним часто меняющихся полей наподобие инвентаря. При этом нужно учитывать, что любой желающий тоже сможет подглядывать за личной жизнью вашего героя.

Смысл большинства полей очевиден из их названия. Самое сложное:

  • expired - показатель неактуальности данных. Для того, чтобы данные подавались в реальном времени, требуется периодическое (раз в час) посещение страницы героя, любая активность пользователя на ней или посещение героя одним из полноценных клиентов. Если expired = true, то герой не посещался слишком давно и остальные данные уже не актуальны (знаем, что неудобно, но пока только так).
  • diary_last - последняя запись из дневника героя.
  • arena_fight - показатель нахождения на арене или в полевом пвп (можно использовать для индикации необходимости присмотра пользователем).

Данные обновляются раз в минуту, поэтому дергать сервер чаще смысла нет. При слишком частых запросах (существует ограничение “не больше 30 запросов за 10 минут в связке (бог+ip)”) данные героя перестают возвращаться, выводя соответствующее уведомление.

Кроме того, существует расширенное API, позволяющее писать полноценные клиенты с возможностью влияния на героя.