Laravel + Vue: маршруты на web.php / api.php

Я совсем новичок в Laravel, я начал работать над проектом и хотел бы получить несколько советов по выбору хорошей архитектуры.

Я решил управлять своим фасадом с помощью Vue и своим бэкэндом с помощью Laravel.

Что я начал делать, так это захватывать маршруты через Laravel и отправлять их на мои маршруты Vue, чтобы определить, какие компоненты загружать и т. д. И я думал сделать вызовы api через axios в моих компонентах Vue.com для извлечения данных ( в формате JSON) с моего контроллера, чтобы отображать их в моем представлении.

Это все еще "веб" потребности.

Но я также думаю о будущем API, который я предоставлю.

Итак, какой вариант лучше выбрать?

Поместите немного Route::resource('model', 'Controller') в файл web.php, затем вызовите эти маршруты в моих компонентах Vue.com и поместите Route::resource('model','Controller') в мой файл api.php?

Спасибо за ответ. Не знаю, верным ли я иду или нет.

Клеман.

Это просто группы для разделения ваших маршрутов на логические участки. Практически это не имеет никакого значения, кроме того, что api.php имеет префикс /api/. (web.php: http://example.com/someroute, api.php: http://example.com/api/someroute). Так в вашем случае вызовы api? пойти с api.php. Кроме того, по прошествии нескольких лет в бизнесе: я думаю, имеет смысл делать то, что вы описываете, и прямо сейчас вы слишком беспокоитесь о том, чтобы сделать это правильно, вместо того, чтобы сделать это.

ippi 14.06.2018 13:34

Спасибо @ippi за ответ. Да, я слышал о добавлении префикса и промежуточного программного обеспечения в зависимости от файла, в который вы помещаете свои маршруты. Но если вы хотите защитить свои маршруты API с помощью Laravel Passport, как вы можете легко управлять этим в контроллере в зависимости от того, исходит ли запрос API от стороннего клиента или через компоненты Vue.com?

Neewd 14.06.2018 13:42
laravel.com/docs/5.6/…
ippi 14.06.2018 14:05

Спасибо @ippi. Я читал, что промежуточное ПО группы web было активировано на маршрутах web.php, а не на маршрутах api.php ...

Neewd 14.06.2018 15:03

@ user2917569 Вы правы, маршруты / api по умолчанию не имеют состояния из-за того, как настроено промежуточное ПО

321zeno 14.06.2018 15:34

У меня есть еще один вопрос о части «Использование вашего API с помощью JavaScript» в документации laravel. В нем говорится, что мы должны разместить CreateFreshApiToken в промежуточном программном обеспечении группы «web» на Kernel.php, но наши маршруты API будут в «api.php», я что-то здесь пропустил?

Neewd 15.06.2018 09:00
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
6
983
1

Ответы 1

Если вы посмотрите на приложение \ Http \ Kernel.php, вы заметите различие между сетью и группой api.

  • web - обрабатывать "стандартные" запросы - им нужна сессия, проверка против пользователя, который вошел в глобальную систему в приложении, обрабатывая веб- Запросы. Вещи веб-интерфейса
  • api - обрабатывать запросы API без сохранения состояния, скорее всего, всегда будет потреблять и возвращать json

Обычно я сохраняю маршруты API в api.php, добавляю к нему префикс версии и загружаю контроллеры из пространства имен API. Это делает его немного более удобным в обслуживании, потому что методы v1 могут быть расширены потенциальной версией v2.

Route::prefix('v1')->namespace('Api\V1')->group(function () {
    // ... API routes
});

Другие вопросы по теме