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

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

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

Сообщение Bio man » 2018.01.14, 14:38

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

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

Сталкивался кто нибудь с такой задачей? Как решили?

zelenin
Сообщения: 10596
Зарегистрирован: 2013.04.20, 11:30

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

Сообщение zelenin » 2018.01.14, 15:38

что такое базовая разметка?

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

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

Сообщение ElisDN » 2018.01.14, 17:53

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 » 2018.01.15, 09:41

zelenin писал(а):
2018.01.14, 15:38
что такое базовая разметка?
Разметка для запуска фронтенд приложения.

sda
Сообщения: 331
Зарегистрирован: 2013.12.19, 09:29

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

Сообщение sda » 2018.01.15, 21:40

Bio man, у фронтенд приложения своя точка входа index.html

Bio man
Сообщения: 609
Зарегистрирован: 2013.07.22, 10:40

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

Сообщение Bio man » 2018.01.16, 08:35

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

sda
Сообщения: 331
Зарегистрирован: 2013.12.19, 09:29

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

Сообщение sda » 2018.01.16, 11:31

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

Bio man
Сообщения: 609
Зарегистрирован: 2013.07.22, 10:40

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

Сообщение Bio man » 2018.01.16, 22:55

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

Ответить