Detectar se a rota é API ou WEB
[Finalizado Pelo Aluno]
Ola Carlos;
Uma duvida:
Gostaria de uma aplicação que usasse um mesmo controller para rotas API e WEB.
Seria uma aplicação que eu criaria para acesso pela web e mobile.
A maneira que estou fazendo até resolver é pelo segment da url; mas acredito que teria um meio mais correto.
Minha duvida : Como e onde detecto se a requisição esta vindo das rotas web para retornar uma view e quando vem da api para retornar Json ?
Desde de já agradeço pela atenção dispemnsada;
Moacir
Olá, Moacir!
Tudo bem?
É possível fazer isso amigo, usar os mesmos controllers para responder tanto para web quanto dar um response para uma API.
Agora um questionamento, é uma boa prática?
Sinceramente, não. Porque fere os princípios do SOLID (S)
---
No controller você pode usar isso (embora recomendo separar em controllers diferentes, e usar service e repositores para isolar as lógicas):
public function index(Request $request)
{
if($request->ajax()) {
return response()->json([
'message' => 'request json'
]);
}
return view('path.sua-view');
}
Precisa estar logado para conseguir responder a este ticket!
Clique Aqui Para Entrar!