Flatik.ru

Перейти на главную страницу

Поиск по ключевым словам:

страница 1
API Tulavideo.net

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

Базовое описание системы

Итак, в основе системы лежат некоторые атомарные действия, например, “Показать список сериалов”, “Показать содержимое сериала” или “Показать серию”. Все они используются сразу после имени хоста в URL. Так, /ShowSerial/13/ будет означать “Показать сериал с идентификатором 13”. Получить эту страницу в XML можно, вставив “xml” между названием хоста и требуемым действием. В нашем примере это будет “/xml/ShowSerials/13/”. Особо отмечу, что регистр имеет значение.
Соответственно, все API сводится к запросам и разбору полученных ответов. Ниже я приведу список запросов и кратко опишу структуру ответа. В ответах будет много второстепенной информации – она описана не будет и должна быть проигнорирована, поскольку используется только для создания HTML-кода. Для простоты изложения будут применяться XPath-выражения.
Авторизация

Каждый пользователь должен быть авторизован либо посредством пары “Почта-Пароль”, либо через OpenID (что, в принципе, можно не поддерживать – я просто сгенерирую для OpenID-пользователей пароли, и они так же смогут входить через единый интерфейс).
Для авторизации необходимо методом POST отправить на https://tulavideo.net/xml/Start/ две переменные:

  • AUTH_USER - содержит почтовый адрес пользователя

  • AUTH_PW - содержит пароль пользователя


Данные переменные можно отправлять на любой запрос, что позволяет авторизоваться на любой странице сайта. В ответ сервер выставит cookie с переменной PHPSESSID, содержащей идентификатор серии, чтобы не запрашивать авторизацию каждый раз.
В ответном документе будет содержаться параметр //document/user/enable, отображающий результаты авторизации: 1 – пользователь успешно авторизован, 0 или ничего – авторизация была неуспешной. Во втором случае все данные, которые могут быть получены при этом и последующих запросах, будут недостоверными.
Время сессии ограничено одними сутками, но возможны ситуации, когда сессия потеряется и следующий запрос потребует повторной авторизации. В этом случае можно повторить запрос, послав вышеуказанные переменные, после определенного количества неудач (не больше 3) – уведомить пользователя об ошибке в авторизационных данных.
Выход из системы происходит посредством вызова https://tulavideo.net/Logout/
Запросы
Базовые информационные запросы с описанием структуры ответа (для простоты https://tulavideo.net/xml опущено):


  1. Start — возвращает последние 10 добавленных серий и 3 фильма
    //document/last/series/item — описание секции (один сериал, одна и больше серий)

    //document/last/series/item/serial — описание сериала


    //document/last/series/item/serial/item/id_serials — идентификатор сериала


//document/last/series/item/serial/item/title — название сериала
//document/last/series/item/serial/item/original — название сериала
//document/last/series/item/serial/item/simg — путь к маленькой иконке 100х100 (требует добавления https://tulavideo.net/)
//document/last/series/item/serial/item/bimg — путь к большой картинке 600х384 (требует также добавления имени хоста)
//document/last/series/item/serial/item/info — описание сериала

//document/last/series/item/item — новые серии [1:n]


//document/last/series/item/item/id_series — идентификатор серии


//document/last/series/item/item/title — название серии
//document/last/series/item/item/s — номер сезона


//document/last/series/item/item/n — номер серии в сезоне

//document/last/series/item/item/ilink — ссылка на стоп-кадр (требует добавления https://serials.tulavideo.net)
//document/last/series/item/item/ivideo — ссылка на видео (требует добавления https://serials.tulavideo.net)
//document/last/series/item/item/tmark — дата публикации серии



//document/last/movies/item — описание новых фильмов [3]
//document/last/movies/item/id_films — идентификатор фильма


//document/last/movies/item/title — название фильма

//document/last/movies/item/ln — продолжительность

//document/last/movies/item/tmark — время публикации

//document/last/movies/item/info — сюжет

//document/last/movies/item/img — ссылка на обложку (требует добавления https://tulavideo.net/)

//document/last/movies/item/ilink — ссылка на стоп-кадр (требует добавления https://films.tulavideo.net)

//document/last/movies/item/vlink — ссылка на видеофайл (требует добавления https://films.tulavideo.net)



  1. ShowCinema/{id:0-9*}/ - показывает информацию об отдельном фильме по его идентификатору. Если идентификатор не установлен — показывает последнее добавленное кино.



//document/mcinema/movie — информация о фильме (по аналогии с приведенной выше) плюс дополнительно styles/* - перечисление жанра кино ([1:n]). styles/*/title — название жанра, остальное — вспомогательные поля.




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



  1. ShowSerials — список всех доступных сериалов. По аналогии с вышенаписанным описанием каждого сериала. Данные берутся по пути //document/mserials/serials/item. Разбиения на страницы нет.



  2. ShowSerial/{id:0-9*}/ - показывает информацию о сериале по его идентификатору и список серий. Описание серий аналогично вышеприведенному.

    //document/mserialsext/serial/info/item — сведения о сериале


    //document/mserialsext/serial/season[id=номер сезона] — список серий в сезоне


//document/mserialsext/serial/season/series/ - описание каждой серии (по аналигии с вышеприведенным)



  1. ShowSeries/{id:0-9*}/ - описание каждой серии по ее идентификатору. Не содержит дополнительных данных к предыдущему запросу, за исключением ссылки на предыдущую и последующую серии.

Базовое описание системы

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

39.18kb.

10 10 2014
1 стр.


Описание системы

Обнаруженные при помощи ViziLite изменения подлежат далее исследованию и мониторингу с применением системы маркирования патологических изменений в тканях полости рта tblue630TM

216.62kb.

15 10 2014
1 стр.


Кабанова Т. Л. зам директора по вр

Описание основных способов достижений целей воспитательной системы. Приложение №1

457.12kb.

15 10 2014
3 стр.


Математические и инструментальные методы экономики

Системы массового обслуживания: описание, модель многоканальной смо и ее оптимизация

93.66kb.

17 12 2014
1 стр.


Описание системы eis mvs gt

Зао «мвс глобальные Телекоммуникации» (09: 00-18: 00 msk) возможно увеличение времени реакции системы. Система eis mvs gt доступна всем клиентам зао «мвс глобальные Телекоммуникаци

80.16kb.

14 10 2014
1 стр.


Назначение xml шлюза 7 Общая схема работы системы 7 Описание типов, используемых в xml шлюзе 8
437.14kb.

17 12 2014
7 стр.


Описание отдельных дисциплин (курсов, юнитов) для Специальности 5В070300 Информационные системы

Способствовать формированию исторического сознания студентов, формировать чувство патриотизма

774.04kb.

25 12 2014
4 стр.


Название Бизнесс-информация

Описание экспортной продукции и услуг: системы воздушного отопления для стационарного и мобильного пользования с употреблением масла, газа или электричества

107.55kb.

16 12 2014
1 стр.