Beego Redirect с методом Post

Я хочу перенаправить URL-адрес с помощью метода POST.

В коде обычно используется this.Redirect("/", 302).

На этот раз мне нужно что-то вроде URL-адреса сообщения, который должен перенаправлять на эту страницу.

Возможно ли это с Beego?

Спасибо.


person Sounthar Shanmugam    schedule 26.01.2018    source источник


Ответы (1)


Redirect Beego принимает http-код, вы просто используете неправильный. Вы хотите, чтобы 307 заставлял метод запроса быть таким же, как и исходный.

this.Redirect("/", 307)

Большинство клиентов и браузеров выдают GET на цели 302, что фактически противоречит RFC.

В связи с этим были представлены 303 и 307:

  • 303: клиенты должны использовать GET запрос
  • 307: клиенты должны использовать исходный метод (например: POST, если изначально использовался POST)
person Marc    schedule 26.01.2018
comment
Спасибо за информацию. Это очень поможет. как я могу передать здесь значения запроса? например, как я могу установить параметры для передачи? - person Sounthar Shanmugam; 27.01.2018
comment
Вы этого не сделаете. 307 означает, что клиент повторит ту же операцию с URL-адресом перенаправления. - person Marc; 27.01.2018
comment
Я очень ценю ваш ответ здесь. Удивительно, как я пропустил это после стольких лет веб-разработки. Буду чаще читать документы / спецификации. Спасибо! - person Rohanthewiz; 06.03.2019