Bom dia pessoal! Estou com a seguinte situação:
Estou desenvolvendo uma aplicação de publicar artigos, onde é possível um determinado usuário publicar artigos, e os usuário poderão visualizar artigos de outros usuários.
Para backend estou usando Laravel 8 e para frontend o VueJs.
Api.php
Route::middleware('jwt.auth')->group(function () {
Route::apiResource('article', ArticleController::class);
});
Uso o ApiResource, e tenho os seguinte métodos: index, store, show, update e destroy. ArticleController.php
public function show(Article $article)
{
return new ArticleResource($article);
}
O meu problema é o seguinte:
O usuário A deseja editar um artigo que ele mesmo publicou então ele acessou a pagina de editar o formulário do artigo (edit-article/10). Ele chamou o método show para visualizar os dados desse artigo.
O usuário B deseja apenas visualizar o artigo do usuário A (article/10). Usou o método show
Mas caso o usuário B acesse o formulário de editar, ele pode estar alterando o id do artigo na URL e assim acessando o artigo de outro usuário e podendo editar.
Ou seja, eu gostaria em que alguma determinada situação permitisse o acesso ao método show e em outra situação não permitisse o acesso ao método.
Obrigado pessoal!