Spec-Zone.ru › CodeIgniter 4

Подделка метода HTTP

При работе с HTML-формами вы можете использовать только HTTP-глаголы GET или POST. В большинстве случаев этого достаточно. Однако для поддержки REST-маршрутизации вам необходимо поддерживать другие, более корректные, глаголы, такие как DELETE или PUT. Поскольку браузеры этого не поддерживают, CodeIgniter предоставляет способ подделки используемого метода. Это позволяет вам отправить запрос POST, но сообщить приложению, что его следует обрабатывать как запрос другого типа.

Для подделки метода к форме добавляется скрытый элемент ввода с именем _method. Его значением является HTTP-глагол, который вы хотите использовать для запроса:

<form action="" method="post">
    <input type="hidden" name="_method" value="PUT" />
</form>

Эта форма преобразуется в запрос PUT и является истинным запросом PUT с точки зрения маршрутизации и класса IncomingRequest.

Используемая форма должна быть запросом POST. Запросы GET подделывать нельзя.

Примечание

Убедитесь, что вы проверили конфигурацию вашего веб-сервера, так как некоторые серверы не поддерживают все HTTP-глаголы по умолчанию и должны иметь включенные дополнительные пакеты для работы.

© 2014–2020 British Columbia Institute of Technology
Licensed under the MIT License.
https://codeigniter.com/user_guide/incoming/methodspoofing.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API