HTTP: запрос POST получает 302, должен ли запрос перенаправления быть GET?

Я читал это , но на самом деле я не получил от там, какой тип запроса должен иметь запрос-перенаправление в каком случае, т.е. функция (начальный-тип-запроса, тип-ответа) -> тип-запроса-перенаправления.

В моем конкретном случае у меня было:

  • начальный тип запроса: POST
  • тип ответа: 302

Google Chrome использовал GET для перенаправленного запроса.

В библиотеке Python запросы есть следующий код ( здесь ):

# http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.3.4
if r.status_code is codes.see_other:
    method = 'GET'
else:
    method = self.method

Т.е. тип запроса перенаправления - GET в случае 303 ( code.see_other ), во всех остальных случаях это исходный тип запроса. То есть для моего конкретного случая выше это будет POST, в отличие от Chrome.

Это, вероятно, неверно, потому что у меня есть один веб-сайт, на котором это действительно работает некорректно (т.е. веб-сайт не ведет себя таким образом).

Каким будет правильный способ / функция?

16
задан Albert 15 November 2011 в 14:50
поделиться