Nazdárek,
píšu si vlastní ws server v C#, abych pochopil jak to funguje a co se tam děje - neberu to jako aplikaci, kterou bych chtěl nějak používat - je to opravdu pro vlastní výukové účely - proto se prosím neděste, že někdo kdo o tom ví minimum si píše vlastní ws server.
Už jsem tak nějak pochopil, jak ten princip +- funguje, na stránkách MS to bylo dost hezky vysvětlené, ale mám problém s odesíláním a přijímáním zpráv. Odeslat zprávu se mi ještě nepodařilo (něco málo jsem zkoušel ale moc jsem se v tom nevrtal) a přijmout zprávu se mi podařilo - jenže a to je ten problém - přišla jako posloupnost bytů, což je nejspíš zcela správně, ale jejich dekódování je poněkud problematické.
1) těch bytů přišlo o něco víc než obsahovala zpráva znaků - což znamená, že to sebou tahá nějaké další informace - podle toho co jsem googlil, tak první byte určuje, jestli je posílán text nebo něco jiného, další byte kóduje délku a na základě hodnoty druhého byte se odvíjí funkce dalších byte - můžou totiž taky kódovat délku (záleží na hodnotě toho druhého byte - tudíž na délce posílaného řetězce). Další byty kódují prý nějaký klíč (přesně prý 4 byty). Zbytek bytů kóduje samotnou zprávu.
2) našel jsem nějaký návod jak z bytů dostat tu zprávu - prý se k tomu používá ten 4 bytový klíč, na který se aplikuje XOR logika.
3) Moc mi to nedává smysl - příjde mi to nějaké kostrbaté a mám pocit, že jsou to bullshity a pořádně nevím jak to tedy funguje. Nevíte náhodou jak na to? Už jsem z toho docela zoufalý, vrtám se v tom snad 2 dny.
Takže abych položil konkrétní dotaz (klidně se rozepište i okolo já si rád počtu):
Jak funguje ta komunikace a co posílám kromě zprávy (co můžu ovlivnit programově a co musím respektovat)? Kde vezmu ten klíč - pokud tam tedy nějaký figuruje? Má ten klíč něco společného s klíčem z handshakingu?
S pozdravem František Falta