Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Страницы 1
Всем привет! На сайте реализовал модуль со статьями. Удаление статьи происходит при переходе по ссылке, частью которой является ID статьи, и по данной ссылке через роут вызывается контроллер, в котором происходит ModelName::dfopIfExists($id). Проверка права на удаление статьи происходит через $this->authorize(...). У меня появились сомнения насчёт безопасности такой реализации, так как, например, при отправке формы мы в скрытом поле также отправляет токен, который должен защитить от одного способа взлома (ещё не разобрался с этим подробно). В случае с удалением статьи такой проверки не происходит. Насколько данная реализация является безопасной?
Не в сети
Дружище, удалять ресурс GET запросом не самая хорошая идея. ознакомся с REST архитектурой
Если вкратце, для твоего случая тебе нужен запрос типа DELETE
<form method="post" action="/articles/{{ $article->id }}">
{{ csrf_field() }} // это предотвратит несанкционированный доступ к твоему эндпоинту со сторонних приложений, чего ты лишаешься при GEt запросе
{{ method_field('DELETE') }}
</form>
//в routes/web
Route::delete('articles/{article}', 'ArticlesController@destroy')->name('articles.destroy');
// В контроллере
public function destroy(Article $article, Request $reqeust)
{
// авторизация на удаление в Reqeust
...
$article->delete();
}
Изменено code_bright_anywhere (10.03.2018 13:51:32)
Пишу бэкенд для своего мобильного приложения, делюсь с миром, заходите посмотреть, много всего интересного https://youtu.be/C5M6-ycJ5gs
Не в сети
Спасибо!
Не в сети
Страницы 1