[so] [Tema 5] Neclaritati enunt
Catalin Neagu
neagu.catalin.f at gmail.com
Thu May 17 23:17:40 EEST 2018
Am inteles, imi e mai clar acum.
Multumesc frumos pentru raspunsuri!
O seara buna,
Catalin
On Thu, May 17, 2018, 11:10 PM Razvan Crainea <razvan.crainea at gmail.com>
wrote:
>
>
> On Thu, May 17, 2018 at 9:13 PM Catalin Neagu via so <so at cursuri.cs.pub.ro>
> wrote:
>
>> Salut,
>>
>> Am cateva intrebari legate de enuntul problemei.
>>
>> 1.1 Din cate am inteles din enunt, cererile vor fi siruri de caractere
>> care respecta protocolul http. Ca si informatie utila din aceaste cereri,
>> mai e ceva pe langa request path-ul pentru fisier?
>>
> Da, în cadrul temei doar path-ul este util.
>
>>
>> 1.2 Ne vor trebui si alte functii de callback pe care sa le includem in
>> http_parser_settings pentru http_parser_execute?
>>
> Vă trebuie doar callback-ul care se apelează după ce este identificat
> path-ul.
>
>
>>
>> 2.1 Cum anume va trebui sa fie raspunsul pentru o cerere valida? Trimit
>> pur si simplu fisierul si apoi trimit un mesaj de genul "HTTP/1.0 200
>> OK\r\n"? Sau trebuie sa integrez continutul fisierului intr-un sir de
>> caractere care are pe langa si alte campuri cum ar fi "Content-Length:" si
>> altele asemenea?
>>
> Pe lângă first line-ul (200 OK) care este obligatoriu, trebuie să trimiți
> și "Content-Length".
> HTTP este un protocol la nivel aplicație care rulează peste TCP. Peste TCP
> se trimit stream-uri de date; asta înseamnă că la nivel de TCP nu poți
> să-ți dai seama dacă pachet-ul anterior s-a terminat de trimis, sau mai vin
> date pe același stream. Drept urmare, dacă tu nu trimiți header-ul
> "Content-Length:", cel care citește răpsunsul tău, nu va putea știi dacă tu
> ai trimis tot body-ul din răspuns, sau urmează să mai trimiți.
> De asemenea, este indicat să trimiți și header-ul de "Content-Type:",
> pentru ca cel care primește răspunsul să știe cum să-l interpreteze.
>
>
>>
>> 2.2 Cum anume va trebui trimis un fisier folosind mecanismul de
>> zero-copy? Referitor la intrebarea de mai sus. Acesta nu prea poate fi adus
>> in memoria procesului pentru acea integrare intr-un mesaj de tip HTTP din
>> cate imi dau seama.
>>
> Nu mi-e clară întrebarea ta. În principiu trebuie să trimiți header-ul
> HTTP al răspunsului, apoi fișierul pe socket-ul conexiunii.
>
>
>>
>> 2.3 Cum anume arata o cerere invalida? O cerere care are un path care nu
>> duce catre nici un fisier si atat? Sau mai sunt si alte campuri din cerere
>> de care trebuie tinut cont?
>>
>
> O cerere care nu are un path, sau duce către un path inexistent.
>
> PS: am modificat subliectul în Tema 5
>
> Sper că e clar acum. Spor!
> Răzvan
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://cursuri.cs.pub.ro/pipermail/so/attachments/20180517/406c434c/attachment.html>
More information about the so
mailing list