У меня есть простая функция контроллера, которая удаляет запись БД (для этого используется функция модели). У меня есть ссылка на это в одном из моих представлений (например, http://www.example.com/item/delete/3), и я использую jQuery для отображения диалогового окна подтверждения, чтобы убедиться, что пользователь действительно хочет его удалить. Все в порядке. Однако, если вы просто вводите этот URL-адрес в своем браузере, элемент будет удален без предупреждения.Codeigniter: Как обращаться с прямой ссылкой на контроллер/функцию/param?
Есть ли способ справиться с этим либо в том, как я кодирую функцию контроллера или в модели?
Не говоря уже о том, что атаки CSRF, вероятно, проще, если вы используете GET. Кто-то может опубликовать что-то вроде , и если пользователь admin его просмотрит, функция удаления будет срабатывать. Конечно, то же самое можно было бы сделать с поста, но было бы сложнее, я бы подумал. – someoneinomaha
Полностью согласен. Хорошая точка зрения. –