Валентин Бартенев
March 27, 2013 10:02AM
On Wednesday 27 March 2013 14:09:54 ciklop wrote:
> >Некий Бен скорее всего неправ, и streaming_callback работает вне
>
> зависимости
>
> >от chunked transfer encoding. Во всяком случае, никаких явных указаний на
> >обратное я не нашел. И было очень бы странно, если бы он это требовал.
>
> Тут есть такой нюанс - tornado может использовать simple_httpclient и
> curl_httpclient
> Вот как раз simple_httpclient явно ожидает Transfer-Encoding: chunked. Без
> него streaming_callback работать не будет.
> А вот curl_httpclient этот заголовок для этого случае не волнует, и с ним
> всё прекрасно работает.
>

Я посмотрел код simple_httpclient и проблема заключается в том, что он
в принципе не поддерживает streaming_callback в том виде, в котором его
полагает использовать автор топика.

Для получения данных он зовет IOStream.read_bytes(), которая поддерживает
установку streaming_callback, но он не пользуется этой возможностью вообще,
не важно, используется ли chunked transfer encoding, или нет.

Однако у simple_httpclient также определен streaming_callback, но он несет
совершенно другой смысл и работает иначе. Совпадение в названиях - тут скорее
нелепая ошибка.

Насколько я понимаю, задача автора - экономить ресурсы и память, не
буферизировать большой файл целиком в память, а обрабатывать его по мере
получения. Для этой задачи simple_httpclient в принципе не подходит. Не даром
simple в названии.

--
Валентин Бартенев
http://nginx.org/en/donation.html
_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru
Subject Author Posted

Transfer-Encoding: chunked для статических файлов

Serafim March 25, 2013 05:22AM

Re: Transfer-Encoding: chunked для статических файлов

Валентин Бартенев March 25, 2013 06:16AM

Re: Transfer-Encoding: chunked для статических файлов

ciklop March 27, 2013 06:09AM

Re: Transfer-Encoding: chunked для статических файлов

Валентин Бартенев March 27, 2013 10:02AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 149
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 500 on July 15, 2024
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready