Ovu stranicu je najbolje pregledavati u modernom internet pregledniku s omogućenim JavaScriptom.

[APIUW] Gradivo


SuperSaiyano

MGJ i mene isto zanima kako to uraditi


anon00

MGJ Dosta je jednostavan zadatak, samo ga treba bolje predočiti

Malo teorije:
Short polling funkcionira ovako: Klijent periodički (npr svakih 5s) šalje GET zatjev i što dobije dobije. Ako ima poruke on ce je dohvatiti, ako nema onda dobiva prazan odgovor.
Zbog toga na nekim mjestima stoji X jer ta poruka nikad nije došla - neka druga, novija, poruka je u meduvremenu dosla i zapisala se u varijabu “zadnjaPoruka”
(U praksi se ovo ne koristi jer je ostvarivanje veze sa serverom tj onaj handshake zapravo najskuplji dio)

Long polling funkcionira ovako: Klijent posalje GET zahtjev i taj zahtjev ostaje otvoren na serveru dokle god mu server ne posluži odgovor. Kad klijent dobije odgovor onda opet radi novi GET zahtjev za iducom porukom pa ceka odgovor na nju . Zbog toga u rj. zadatka vrijeme kad klijent dobije poruku = vrijeme kad je drugi klijent poslao tu poruku
(Ovaj nacin smanjuje nepotrebne zahtjeve na server, bolje ali ne idealno)

WebSocket : Izmedu klijenta i servera se otvara TRAJNA veza putem TCP-a. To je duplex sto znaci da se kroz tu vezu moze razgovarati u oba smjera istovremeno. Tu ce isto biti vrijeme kad klijent dobije poruku = vrijeme kad je drugi klijent poslao tu poruku

Ono sto u zadatku pise je da se pamti samo jedna ZADNJA poruka. Dakle kod short pollinga - ako klijent 2 svakih 10s pošalje GET zahtjev za porukom, a klijent 1 u tom vremenu je poslao 3 poruke (“3”,“5” i “6”) onda ce klijent2 dobiti samo onu zadnju tj “6”

Eo mali dijagram da je jasniji taj short polling. Mislim da ova druga dva nemam sto objasnjavati.


SuperSaiyano

SuperSaiyano nvm ne mogu editovati ovo gore, ali jedino je pooling drugaciji jer klijenti salju zahtjev svakih 5 odnosno 10 sekundi pozive na poslužitelj gdje im on šalje samo zadnju zapaćenu poruku prije tog zahtjeva.


Ellie

Da i cini se po raspravi od prosle godine, da je vise ljudi rijesilo tako i da nisu ni sami bili sigurni jel im to ok ili ne


Lusy

anon00 Hvala punoo!


anon00

Sad sam skuzio da je u njihovom rj. poruka 7 za short polling kriva i trebalo bi stajati 40, a ne 30
Poruku koja je poslana u 31. sekundi klijent2 ce dobiti tek u 40-toj sekundi. Logicno, ali bolje napisati