Klient ASP.NET SignalR

Łącz się z hubami ASP.NET SignalR (classic) z Delphi/C++ Builder. Negocjuj, wywołuj metody serwera i odbieraj callbacki po stronie klienta przez pojedynczy typowany komponent.

TsgcWSAPI_SignalR

Klient dla klasycznego protokołu ASP.NET SignalR. Obsługuje krok negotiate REST, URL połączenia WebSocket, wywołania metod hubów i kopertę JSON.

Klasa komponentu

TsgcWSAPI_SignalR

Protokół

ASP.NET SignalR

Platformy

Windows, macOS, Linux, iOS, Android

Edycja

Standard / Professional / Enterprise

Negocjuj, wywołuj, odbieraj

Połącz z TsgcWebSocketClient skierowanym na endpoint SignalR, zadeklaruj hub, a następnie wywołuj Invoke (metoda serwera) i powiąż się z OnSignalRMessage (callbacki).

uses
  sgcWebSocket, sgcWebSocket_API_SignalR;

var
  WSClient: TsgcWebSocketClient;
  SignalR: TsgcWSAPI_SignalR;
begin
  WSClient := TsgcWebSocketClient.Create(nil);
  WSClient.Host := 'signalr.example.com';

  SignalR := TsgcWSAPI_SignalR.Create(nil);
  SignalR.Client := WSClient;
  SignalR.SignalR.Hub := 'chathub';

  WSClient.Active := True;

  // Invoke a server-side method on the hub
  SignalR.Invoke('SendMessage', ['user1', 'hello']);
end;
// uses: sgcWebSocket, sgcWebSocket_API_SignalR
TsgcWebSocketClient *WSClient = new TsgcWebSocketClient(this);
TsgcWSAPI_SignalR *SignalR = new TsgcWSAPI_SignalR(this);
SignalR->Client = WSClient;
SignalR->SignalR->Hub = "chathub";

WSClient->Active = true;

Co jest w środku

Implementuje starszy protokół ASP.NET SignalR (wariant przed-Core).

Handshake negotiate

Klasyczny protokół SignalR najpierw negocjuje przez HTTP (token połączenia, wersja protokołu, zestaw transportów). Komponent wykonuje wywołanie negotiate przed otwarciem WebSocket.

Wywoływanie metod hubów

Invoke(method, args) wysyła kopertę w stylu hub z polami H (hub), M (method), A (args) oraz identyfikatorem sekwencji; odpowiedzi przychodzą jako OnSignalRMessage.

Callbacki klienta

Wiadomości push inicjowane przez serwer pojawiają się jako OnSignalRClientCallback(method, args) — komponent parsuje kopertę M / A i dostarcza surowe argumenty JSON.

Ponowne łączenie

Po rozłączeniu komponent ponownie negocjuje i wznawia identyfikator połączenia. WatchDog bazowego klienta obsługuje ponawianie na poziomie transportu.

Cookies i uwierzytelnianie

Ciasteczka uwierzytelniające są automatycznie propagowane z wywołania negotiate do handshake WebSocket. Skonfiguruj niestandardowe nagłówki przez bazowego klienta.

Dojrzały, ale klasyczny

Klasyczny SignalR jest wciąż wspierany dla aplikacji ASP.NET 4.x. Dla hubów .NET Core / .NET 5+ użyj zamiast tego siostrzanego komponentu TsgcWSAPI_SignalRCore.

Specyfikacje i źródła

Autorytatywne źródła protokołu implementowanego przez ten komponent.

Dokumentacja i dema

Bezpośredni link do dokumentacji komponentu, gotowy do uruchomienia projekt demo i pobieranie wersji próbnej.

Pomoc online — API_SignalR Pełna dokumentacja właściwości, metod i zdarzeń tego komponentu.
Bezpłatna wersja próbna — sgcWebSockets Pobierz pakiet próbny, aby łączyć się z hubami ASP.NET SignalR z poziomu Delphi.
Dokument techniczny (PDF) Funkcje, szybki start, przykłady kodu dla Delphi i C++ Builder oraz źródła pierwotne — tylko ten komponent.
Podręcznik użytkownika (PDF) Kompleksowy podręcznik obejmujący każdy komponent biblioteki.

Gotowy do komunikacji z hubem SignalR?

Pobierz bezpłatną wersję próbną i połącz się z ASP.NET SignalR hubs from swoich aplikacji Delphi.