The WebSocket protokół ( WS) zapewnia możliwość wymiany danych pomiędzy przeglądarką internetową a serwerem za pomocą trwałego połączenia. Dane są przez niego przesyłane w obu kierunkach w postaci "pakietów", bez zrywania połączenia i dodatkowych HTTP żądań.

WebSocket jest szczególnie dobre dla usług, które wymagają stałej komunikacji, takich jak gry online, rynki w czasie rzeczywistym i tak dalej.

Przykład użycia

Przyjrzyjmy się tworzeniu i używaniu WebSocket w AppMaster na przykładzie prostego chatbota.

Po pierwsze, musisz stworzyć proces biznesowy w backendzie aplikacji ( Backend > Business Processes ), który będzie odpowiadał na wiadomości od użytkownika i wysyłał coś w odpowiedzi, w zależności od otrzymanej wiadomości.

Ten BP odbiera wiadomość i w zależności od jej treści zwraca w odpowiedzi ciąg znaków.

  • Jeżeli. message = " Hi!", to w odpowiedzi otrzymujemy komunikat o treści " Hello!";
  • Jeśli. message = " How are you doing?", wówczas BP zwróci ciąg znaków " Great! How about you?";
  • W każdym innym przypadku BP będzie działał jak echo i zwróci w odpowiedzi ten sam ciąg znaków, który otrzymał na wejściu.

Następnie należy utworzyć WebSocket Endpoint (przejdź do. Backend > Endpoints > New Endpoint > WebSocket Endpoint), aby ten BP komunikował się z naszym botem.

W nowo otwartym oknie wypełnij następujące pola:

  • Endpoint Type: GET
  • Endpoint Address
  • Endpoint Group
  • Business Process

Po skonfigurowaniu Endpoint należy opublikować aplikację, która będzie z niego korzystać ( Publish).

WebSocket można przetestować za pomocą use Postman app (https://www.postman.com/). Szczegółową instrukcję, jak używać Postman można znaleźć pod linkiem: https://learning.postman.com/docs/sending-requests/supported-api-frameworks/websocket/.

W pierwszej kolejności należy utworzyć nowe WebSocket żądanie w Postman aplikacji ( New > WebSocket Request).

Należałoby umieścić w nim pełny adres websocket. Można go uzyskać w Swagger ( Preview > Development) poprzez wysłanie żądania na adres Endpoint który utworzyliśmy wcześniej w tym przewodniku. Zobaczysz adres websocket w Request URL sekcji.

Po skopiowaniu go i wklejeniu do odpowiedniego pola w Postman należy zamienić https na wss ponieważ komunikacja będzie odbywać się za pomocą wss protokół.

Następnie należy się zalogować, aby użyć WebSocket. Autoryzacja w websockets odbywa się poprzez Cookies. Można znaleźć Cookies w następujący sposób:

  • W opublikowanej aplikacji naciśnij F12, aby otworzyć narzędzie deweloperskie;
  • Przejdź do Networks i przełącz się na Headers zakładkę;
  • W Request Headers zobaczysz Cookie wartość;

Poprzez dodanie Cookie do nagłówka żądania ( Headers) do WebSocket w Postman i klikając na Connect można sprawdzić, czy połączenie z WS zostało pomyślnie nawiązane. Wynik udanego połączenia jest pokazany na poniższym przykładzie.

Możesz wysłać wiadomość w bloku New Message ale musi to być JSON-formatted. To znaczy, jeśli chcesz wysłać ciąg znaków " Hello!", to wiadomość będzie wyglądać tak: {" message" : " Hello!"}. W tym przypadku nazwa klucza (=. message w tym przypadku) musi odpowiadać nazwie zmiennej na wejściu BP.

Wynik wykonania tego zapytania w poniższym przykładzie:

AppMaster 101Szybki kurs

10 modułów
2 tygodni

Nie wiesz, od czego zacząć? Zacznij od naszego kursu ekspresowego dla początkujących i poznaj AppMaster od A do Z.

Zacznij
AppMaster 101 Crash Course

Potrzebujesz więcej pomocy?

Rozwiąż każdy problem z pomocą naszych ekspertów. Oszczędź czas i skup się na tworzeniu swoich aplikacji.

headphones

Skontaktuj się ze wsparciem

Opowiedz nam o swoim problemie, a znajdziemy rozwiązanie.

message

Czat społeczności

Połącz się z innymi użytkownikami, aby uzyskać pomoc dotyczącą platformy.

Dołącz do społeczności
Jak używać WebSockets | AppMaster University