REST API, маршрутизация

Обсуждаем, как правильно строить приложения
Ответить
Bio man
Сообщения: 609
Зарегистрирован: 2013.07.22, 10:40

REST API, маршрутизация

Сообщение Bio man »

Допустим, есть фронтенд клиент на vue.js и, например, на андроиде.
Я хочу, что бы сервер отдавал базовую разметку, если это первый запрос.
Т.е. если запрос / или /login но сделан впервые (например, вбили адрес в адресную строку), то отдавалась бы базовая разметка.
Сперва, пришел к такому решению, что можно проверять является ли это ajax запросом, и если да, то отдавать непосредственно запрошенные данные, если нет, то отдавать базовую разметку.
Но, если запрос послать с андроид клиента, не факт, что это будет ajax-запросом.

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

Сталкивался кто нибудь с такой задачей? Как решили?
zelenin
Сообщения: 10596
Зарегистрирован: 2013.04.20, 11:30

Re: REST API, маршрутизация

Сообщение zelenin »

что такое базовая разметка?
Аватара пользователя
ElisDN
Сообщения: 5845
Зарегистрирован: 2012.10.07, 10:24
Контактная информация:

Re: REST API, маршрутизация

Сообщение ElisDN »

Bio man писал(а): 2018.01.14, 14:38 Но, если запрос послать с андроид клиента, не факт, что это будет ajax-запросом.
Это будет запрос с Accept-Encoding: application/json.
Bio man
Сообщения: 609
Зарегистрирован: 2013.07.22, 10:40

Re: REST API, маршрутизация

Сообщение Bio man »

zelenin писал(а): 2018.01.14, 15:38 что такое базовая разметка?
Разметка для запуска фронтенд приложения.
sda
Сообщения: 334
Зарегистрирован: 2013.12.19, 09:29

Re: REST API, маршрутизация

Сообщение sda »

Bio man, у фронтенд приложения своя точка входа index.html
Bio man
Сообщения: 609
Зарегистрирован: 2013.07.22, 10:40

Re: REST API, маршрутизация

Сообщение Bio man »

sda писал(а): 2018.01.15, 21:40 Bio man, у фронтенд приложения своя точка входа index.html
Смотря как приготовить. У меня точка входа любой URL запрошенный с заголовком Accept: text/html.
После запуска vue, оно уже само разрулит, 404 это или что-то еще.
sda
Сообщения: 334
Зарегистрирован: 2013.12.19, 09:29

Re: REST API, маршрутизация

Сообщение sda »

Bio man, все несуществующие url перенаправляют на index.html где поднимается angular/vue/etc и роутер фронтенд приложения решает, что показать пользователю. Зачем пытаться запускать vue при помощи php ?
Bio man
Сообщения: 609
Зарегистрирован: 2013.07.22, 10:40

Re: REST API, маршрутизация

Сообщение Bio man »

Потому, что только так можно заинжектить какие-то динамические параметры сразу в страницу, и не выполнять дополнительный запрос.
Заинжектил, и приложение сразу поднялось в нужном мне состоянии.
Как-то так.
Это как пример.
Сам пользуюсь таким подходом вместо статики, потому, что мне так тупо удобней. Если увижу плюсы статического файла, обязательно перейду на него. А пока плюсов по сравнению с yiiшным роутингом не вижу.
Ответить