Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Caché Новый топик    Ответить
 RESTful url без слеша  [new]
D_De1mos
Member

Откуда:
Сообщений: 79
Начали использовать %CSP.Rest и столкнулись со следующей проблемой:
Restful api обычно выглядит следующим образом:
GET /tickets - Retrieves a list of tickets
GET /tickets/12 - Retrieves a specific ticket
...

но в роутинге кашевого реста невозможно указать следующий конфиг роутов (подразумевается, что /tickets форвардим снаружи):
XData UrlMap
{
<Routes>
  <Route Url="/:ticketId" Method="GET" Call="GetById" Cors="false" />
  <Route Url="" Method="GET" Call="GetList" Cors="false" />  
</Routes>
}

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

Кто-нибудь с таким сталкивался и решал?
18 апр 17, 09:52    [20409733]     Ответить | Цитировать Сообщить модератору
 Re: RESTful url без слеша  [new]
Alexey Maslov
Member

Откуда: СПб
Сообщений: 1350
D_De1mos,

Ответ в стиле небезизвестного капитана: можно создать приложение по имени "/", тогда urlmap будет таким:
XData UrlMap
{
<Routes>
  <Route Url="/tickets" Method="GET" Call="GetList" Cors="false" />  
  <Route Url="/tickets/:ticketId" Method="GET" Call="GetById" Cors="false" />
</Routes>
}

Минус очевиден: такое приложение вы сможете создать только одно.

P.S. Попробуйте спросить на community, там как раз серия статей выходит "Angular 1.x app with a Cache' REST backend".
18 апр 17, 11:15    [20410034]     Ответить | Цитировать Сообщить модератору
 Re: RESTful url без слеша  [new]
D_De1mos
Member

Откуда:
Сообщений: 79
Alexey Maslov
можно создать приложение по имени "/", тогда urlmap будет таким:

Ну мы в итоге на таком варианте пока и остановились, пока будет одна плоская мапа на весь rest, единственно, что сами вызовы "Call" во внешние классы, типа "MyApp.TicketsController:GetById"
18 апр 17, 13:07    [20410559]     Ответить | Цитировать Сообщить модератору
Все форумы / Caché Ответить