ERR_INVALID_CHUNKED_ENCODING значи дека одговорот не можел да се декодира како целосна chunked порака. Тоа што дел од содржината пристигнал успешно не докажува дека остатокот од одговорот бил валиден.

  1. Зачувајте ги заглавијата на одговорот и првата грешка на декодерот. Утврдете која компонента ја пријавила и дали пораката била декларирана како chunked.
  2. Лоцирајте ја точката на запирање. HTTP/1.1 chunked кодирањето бара големини, соодветните податоци, разделувачи и завршен блок, со trailers каде што е применливо. Прерано затворање на врската и неисправна големина се различни траги.
  3. Споредете го истото контролирано барање на предвидената траса. Совпаѓајте го барањето со дневниците на проксито и нагорниот сервер. Барајте затворање од нагорниот сервер, трансформација од посредник или откажување на апликацијата во таа точка.

Не заклучувајте за HTTP врамувањето од големината на TCP баферот. Едно читање на сокетот може да содржи половина блок или неколку блокови; библиотеката потоа може да го изложи декодираната содржина во различни бафери. JSON записот има уште една граница. Проксито може да го прерамни одговорот без да ги зачува оригиналните граници на пакетот.

Ако доказите упатуваат на стара Squid имплементација, задржете го нејзиниот број на издание заедно со тој заклучок. Советите за закрпи за Squid 2.x не го опишуваат секое текучко издание. Зачувајте го нормалното декодирање и валидацијата на сертификати при споредувањето: потиснувањето на грешката може да остави нецелосна датотека да изгледа како успешно преземање.

Поврзани статии