[so] [tema5 lin]

Razvan Crainea razvan.crainea at gmail.com
Sat May 19 16:53:24 EEST 2012


2012/5/19 Andreea Hodea <hodea_andreea at yahoo.com>:
> Deci, pentru a trimite un fisier pe bucati trebuie sa folosim urmatorul format?
> HTTP/1.1 200 OK
> Transfer-Encoding: chunked
>
> dimensiune_chunk_1
> chunk1
>
> dimensiune_chunk_1
> chunk2
>
> ...
> 0
>
> Si pentru fiecare chunk se trimit primele doua randuri din antetul HTTP? Si atunci, nelamurirea cu sendfile ramane in picioare: send("HTTP/1.1 200 OK\r\n""Transfer-Encoding: chunked\r\n""\r\n""dimensiune_chunk_1\r\n") + sendfile(chunk)?
>

Bună, Andreea!

Dimensiunea fișierului nu trebuie specificată decât o dată, în
headerul "Content-Length" trimis odată cu restul antetului HTTP. Apoi
se trimit datele, pe același socket, chunk după chunk până ce tot
fișierul a fost trimis.
Prin urmare, secvența de operații ar fi:
send("HTTP/1.1 200 OK\r\nContent-Length: $size\r\n\r\n") + sendfile(chunk)

-- 
Răzvan Crainea


More information about the so mailing list