Вернуть JSON вместо макета VUE при возвращении 404 в Ларавеле 12Php

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Вернуть JSON вместо макета VUE при возвращении 404 в Ларавеле 12

Сообщение Anonymous »

В web.php у меня определен следующий маршрут:

Код: Выделить всё

Route::fallback(function() {
return view('layouts.app');
});
< /code>
, которые ранее выглядели так (но оба вариации приводят к одному и тому же нежелательному поведению): < /p>
Route::get('/{vue_capture?}', [VueController::class, 'getViewTemplate'])
->where('vue_capture', '^(?!docs\/api|docs\/api\.json)[\/\w\.-]*');
in api.php У меня простой маршрут:
Route::post('lookup', [Api\V1\Controller::class, 'lookup']);
< /code>
Единственное, что делает маршрут, это: < /p>
return response()->json(['message' => 'not found'], 404);
< /code>
Но независимо от того, что я пытаюсь, я не могу помешать Ларавелу не дефолт на этот маршрут резерва. Если, однако, я возвращаю это: < /p>
return response()->json(['message' => 'not found'], 403);
< /code>
Это работает так же, как и ожидалось, поэтому он конкретно связан с 404 с. Я не могу, для жизни, выяснить, что мне нужно сделать, чтобы Laravel выводил простой ответ 404 JSON. Я получаю немного дальше, как это: < /p>
Route::fallback(function() {
if (Request::header('Accept') !== 'application/json') {
return view('layouts.app');
} else {
return response()->json(['message' => 'not_found'], 404);
}
});
< /code>
Но у него есть 2 проблемы: < /p>

Теперь он делает nginx 404, все еще нет json. < /li>
Это все еще заканчивается в резервном пути, в то время как это, по моему мнению, не должно достичь того, что это может быть еще один момент. Настройка в исключении, но просьба никогда не заканчивается, поэтому мне нечего зацепить.

Подробнее здесь: https://stackoverflow.com/questions/797 ... laravel-12
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение