ср, 25 дек. 2019 г. в 14:38, Sergey Kandaurov <pluknet@nginx.com>:

> On 24 Dec 2019, at 23:35, Илья Шипицин <chipitsine@gmail.com> wrote:
>
> привет!
>
> допустим, такая ситуация. есть POST запрос, у него есть хедеры и, собственно, тело запроса. мы отправили хедеры на бекенд, тело не успели отправить, и бекенд нам сделал TCP RST.
>
> должен ли такой POST повторно отправляться, если не указан non_idempotent ? (судя по моим экспериментам - не отправляется. но ведь тело не было отправлено ? значит мы должны попасть под условие, что такой запрос можно отправить повторно ?)

Как только мы успешно установили соединение и перешли к отправке запроса
(не важно, успели начать отправку тела или нет), запрос считается отправленным,
т.к. в общем случае мы не знаем, был ли он обработан или нет.

я предлагаю такую логику.
бекенд умеет отличать полностью полученный запрос от неполного запроса (например, по Content-Length)
навряд ли бекенд будет обрабатывать неполностью полученный запрос

и считать отправленными только полностью отправленные запросы
 

--
Sergey Kandaurov

_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru