Yii Framework Forum: Restful Api - Yii Framework Forum

Jump to content

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

Restful Api схема Rate Topic: -----

#1 User is offline   tANDm 

  • Newbie
  • Yii
  • Group: Members
  • Posts: 3
  • Joined: 15-September 13

Posted 15 September 2013 - 01:58 PM

Всем привет!
Появилась необходимость реализовать restful api на базе yii с поддержкой версионности.

Будет сайт, аля зазывалка воспользоваться мобильным приложением. И будет мобильное приложение,
которое взаимодействует с сервером через API.

Запросы вида: GET api.site.ru/v1/login?username=.....
Где v1 - это основная версия API. И также клиент будет передавать в http заголовке подверсию
в рамках основой версии. Например: "Service-version: a1".

Хочу реализовать API в виде отдельного модуля. Но вот хоть убейте, не могу понять как сделать поддержку
версионности для API. Например есть три разные подверсии: a1,a2,a3. В них метод login() имеет разную реализацию и
вот как хранить все версии методов и как вызывать необходимый? Либо если метод в контроллере не трогать,
а модифицировать модель/класс, то вопрос такой же, где и как хранить разные версии и как создавать объект нужной версии?

Мозг уже сломался ...
0

#2 User is offline   samdark 

  • Having fun
  • Yii
  • Group: Yii Dev Team
  • Posts: 3,616
  • Joined: 17-January 09
  • Location:Russia

Posted 15 September 2013 - 04:00 PM

Мы делаем контроллерами. То есть есть ApiController, который базовый с тем, что никогда не меняется и кучка контроллеров вроде Api20Controller, Api21Controller и т.д.
Yii 1.1 Application Development Cookbook

Enjoying Yii? Star us at github: 1.1 and 2.0.
0

#3 User is offline   tANDm 

  • Newbie
  • Yii
  • Group: Members
  • Posts: 3
  • Joined: 15-September 13

Posted 15 September 2013 - 10:49 PM

View Postsamdark, on 15 September 2013 - 04:00 PM, said:

Мы делаем контроллерами. То есть есть ApiController, который базовый с тем, что никогда не меняется и кучка контроллеров вроде Api20Controller, Api21Controller и т.д.


Т.е. получается в моем случае (мне нужно подверсию читать из хттп заголовка) надо делать реализацию в виде отдельного класса для UrlManager, либо класс для правил, и там парсить хеадер и перенаправлять на нужный контроллер, так?
0

#4 User is offline   samdark 

  • Having fun
  • Yii
  • Group: Yii Dev Team
  • Posts: 3,616
  • Joined: 17-January 09
  • Location:Russia

Posted 16 September 2013 - 03:24 AM

Да, можно при помощи UrlRule. Там даже перенаправлять не придётся, просто направлять.
Yii 1.1 Application Development Cookbook

Enjoying Yii? Star us at github: 1.1 and 2.0.
0

#5 User is offline   tANDm 

  • Newbie
  • Yii
  • Group: Members
  • Posts: 3
  • Joined: 15-September 13

Posted 16 September 2013 - 04:29 AM

View Postsamdark, on 16 September 2013 - 03:24 AM, said:

Да, можно при помощи UrlRule. Там даже перенаправлять не придётся, просто направлять.


Спасибо за подсказки!
0

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users