2011-12-21 17 views
8

Jak wspomniano w Aquarium, protokół WebSocket, często opisywany jako jeden z kluczowych elementów HTML5, ma wreszcie postać been blessed (RFC 6455).Implementacje serwera WebSocket dla Delphi

Które z implementacji serwera WebSocket są dostępne dla Delphi?

+0

Możesz spróbować [naszej biblioteki WebSockets] (http://synopse.info/files/html/Synopse%20mORMot%20Framework%20SAD%201.18.html#TITL_150). –

+0

@ArnaudBouchez Przykro mi, ale twoja biblioteka WebSocket nie działa epicko: nie ma ssl (z wyjątkiem ponad httpd.sys, który jest windows, nie mormot), nie ma stabilnej kompresji (włącz kompresję na serwerze i kliencie: klient się zawiesza), nie stabilne uwierzytelnianie (odrąbałem sobie włosy na dwa dni), straszną dokumentację (mnóstwo informacji, ale prawie całkowicie bezużyteczną, w prawdziwie microsoftowym stylu), brak próbek do wielu rzeczy ... I staram się być obiektywny tutaj. Nie zrozumcie mnie źle, baza SQLite jest bardzo potężna i stabilna, ale implementacja websocket pozostawia wiele do życzenia. Przepraszam, mam nadzieję, że się mylę. –

+2

@ TuncayGöncüoğlu Tak, nie ma jeszcze wsparcia SSL, a AFAIK nie ma oficjalnego uwierzytelnienia, ani kompresji w WebSockets (na poziomie RFC), więc nie rozumiem co masz na myśli. W praktyce używamy naszego własnego formatu binarnego w ramach mORMot SOA i korzysta z uwierzytelniania struktury i własnej kompresji (SynLZ) i szyfrowania (AES). Zaczynamy go wykorzystywać przy produkcji z dużą ilością wydarzeń. Oczywiście, poza opcją SOA opartą na interfejsie mORMot, urządzenie jest nieco szorstkie, ponieważ trzeba wszystko wymyślić na nowo - ale brzmi stabilnie (nawet w wielowątkowych) i przy użyciu niewielkiej ilości zasobów. –

Odpowiedz

2

Oto kolejne 2 projekty:

  • bauglir-websocket - websocket realizacja serwer/klient w Pascala i C#;
  • ics-websockets - Serwer WebSockets dla Delphi oparty na Internet Component Suite (ICS);
1

Spróbuj IPworks dla Delphi, mają ładne, dość interoperacyjne komponenty (płatne, nie darmowe).

https://www.nsoftware.com/ipworks/ws/#plat-delphi

+0

Dokumenty dokumentacji WServer (https://www.nsoftware.com/kb/help/IWN9-A/WSServer.rst) nie wyjaśniają, czy możliwe jest użycie tego samego portu (80) zarówno dla normalnego HTTP i Websockets. Czy wiesz, czy jest to obsługiwane przez ich bibliotekę? – mjn

+2

Obecnie używam ich komponentu SSL dla HTTP i HTTPS odpowiednio na 80/443. Jednak wciąż oceniam ich komponenty WS, więc nie mogę jeszcze udzielić odpowiedzi. Być może wypróbuj swój e-mail z pomocą techniczną, zawsze od dawna uważam, że odpowiadają szybko i profesjonalnie. –

+0

Możesz użyć właściwości LocalPort w komponencie WSServer. Zakładając, że nie masz jeszcze czegoś, co nasłuchuje na porcie 80, możesz ustawić LocalPort na 80, a komponent nasłuchi na porcie 80. Jak wspomniał Rick, napisz e-mail na [email protected], skontaktujemy się z Tobą w ciągu 24 godziny (zwykle lepiej). – Brandon