Post/Redirect/Get

Материал из Seo Wiki - Поисковая Оптимизация и Программирование

Перейти к: навигация, поиск

Post/Redirect/Get (PRG) - общий шаблон проектирования для веб-приложений, который обеспечивает защиту от повторной отправки данных веб-форм и интуитивно понятное поведение веб-приложений при использовании закладок в браузере и обновлении страниц.

После того, как пользователь отправит данные с веб-формы на сервер, сервер генерирует HTML-страницу в ответ. Для пользователя это обычная веб-страница, но поскольку она была сгенерирована в ответ на POST-запрос, то при обновлении страницы браузер может ещё раз отправить данные на сервер, тем самым обеспечив повторную отправку данных.

Для решения этой проблемы в веб-приложениях используют паттерн Post/Redirect/Get — вместо возврата непосредственно HTML-страницы после POST-запроса происходит редирект (используется код HTTP 303 (иногда 302) вместе с HTTP-заголовком ответа "Location"), инструктируя браузер о следующей загружаемой странице через HTTP GET-запрос. Страницу, полученную в результате данных действий, можно поместить в закладки браузера и обновить, при этом повторная отправка данных на сервер не произойдет.

Источники

Личные инструменты

Served in 0.072 secs.