ERR_INVALID_CHUNKED_ENCODING znači da odgovor nije mogao biti dekodiran kao potpuna chunked poruka. To što je deo sadržaja stigao uspešno ne dokazuje da je ostatak odgovora bio ispravan.

  1. Sačuvajte zaglavlja odgovora i prvu grešku dekodera. Utvrdite koja komponenta ju je prijavila i da li je poruka bila proglašena chunked.
  2. Pronađite tačku zaustavljanja. HTTP/1.1 chunked kodiranje zahteva veličine, odgovarajuće podatke, razdelnike i završni blok, uz trailers gde je primenljivo. Rano zatvaranje veze i iskvarena veličina su različiti tragovi.
  3. Uporedite isti kontrolisani zahtev na predviđenoj ruti. Uparite zahtev sa dnevnicima proxyja i uzvodnog servera. Tražite zatvaranje od uzvodnog servera, transformaciju posrednika ili otkazivanje aplikacije u toj tački.

Ne zaključujte o HTTP uokviravanju na osnovu veličine TCP bafera. Jedno čitanje soketa može sadržati pola bloka ili nekoliko blokova; biblioteka zatim može izložiti dekodirani sadržaj u različitim baferima. JSON zapis ima još jednu granicu. Proxy može ponovo uokviriti odgovor bez čuvanja originalnih granica paketa.

Ako dokazi upućuju na staru Squid implementaciju, zadržite broj njenog izdanja uz taj zaključak. Saveti za zakrpe za Squid 2.x ne opisuju svako trenutno izdanje. Tokom poređenja sačuvajte normalno dekodiranje i validaciju sertifikata: potiskivanje greške može ostaviti nepotpunu datoteku da izgleda kao uspešno preuzimanje.

Povezani članci