![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 44 Pomógł: 1 Dołączył: 18.01.2013 Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Od 24h nie mogę spokojnie spać :/ Chce stworzyć prostą grę przeglądarkową za pomocą WebSocket'u. Problem polega na tym, że nie mogę odczytać po stronie serwera danych binarnych. Tak client wysyła dane:
Po stronie serwera próbuje odczytać dane za pomocą funkcji unpack, ale jak Boga kocham mi to nie wychodzi, a próbowałem prawie wszystkich możliwości :/ Otrzymane dane nie są poprawne. Co robię źle? Z góry dzięki za pomoc ![]() |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 139 Pomógł: 24 Dołączył: 12.05.2013 Skąd: Hamburg Ostrzeżenie: (0%) ![]() ![]() |
1.
Kod b.setUint8(0, 16); to jest BI, a cała reszta to LI. Po co?2. Kod !0 a dlaczego nie Kod true ? Próbujesz kogoś z równowagi wyprowadzić?3. Pokaż czego próbowałeś i jaki był rezultat. Wtedy może ktoś Ci będzie w stanie pomóc. |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 44 Pomógł: 1 Dołączył: 18.01.2013 Ostrzeżenie: (0%) ![]() ![]() |
1. A no dlatego, że "l" to WebSocket to nim wysyłam dane.
"b" służy do odczytywania i zapisywania. Sam ArrayBuffer na to nie pozwala (Więcej tutaj: klik) 2. Co za różnicy czy wpisze !0 lub true, albo 0 i false, skoro to jest to samo. Tak mnie nauczono w szkole :/ Ale znając polską oświatę, pewnie okaże się, że jednak jest różnica. 3. Próbowałem różnych formatów, każdy z nich zwracał randomowe znaki. Tutaj jest wina na 100% z funkcją unpack(), nie umiem po prostu ustawić dobrego formatu. Z resztą dałem sobie spokój z binarnym wysyłaniem danych. Użyłem JSON'a, w przyszłości zobaczę czy serwer daje rade z otrzymywanymi danymi i równoczesnym wysyłaniem ich, jeśli nie to będzie mnie czekała optymalizacja :/ Ten post edytował Nicc0 18.05.2015, 15:05:31 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 139 Pomógł: 24 Dołączył: 12.05.2013 Skąd: Hamburg Ostrzeżenie: (0%) ![]() ![]() |
Ad.1. Nie zrozumieliśmy się. Ja pisałem o byte order, ale widzę, że to mój błąd. Pierwsza funkcja zapisuje 8 bit więc to bez znaczenia.
Ad.2. !(123-123), !false, !(!true-false) itd., itp. Można wymyślić miliardy sposobów na zapis czegoś tak oczywistego jak proste i jakże wymowne boolowskie true. Ale ja się tam tam nie znam a i na pewno nie będę się wykłucał ze szkolnymi autorytetami ![]() Ad.3. Problem nie jest w funkcji unpack ani w wysyłce na serwer. Problem w tym, że nie wiesz co i jak wysyłasz i nie wiesz jak to odczytać. Ale skoro nie jest ci to już potrzebne, to temat można pewnie zamknąć. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 20.08.2025 - 06:02 |