TsgcWebSocketClient › Methods › Connect
Opent de WebSocket-verbinding synchroon en blokkeert de aanroeper totdat de handshake is voltooid of de time-out verstreken is.
function Connect(const aTimeout: Integer = 10000): Boolean; overload;
function Connect(out AError: string; const aTimeout: Integer = 10000): Boolean; overload;
| Naam | Type | Beschrijving |
|---|---|---|
AError | out string | Retourneert de beschrijving van de verbindingsfout wanneer de methode mislukt, of een lege string bij succes. Dezelfde tekst is achteraf beschikbaar in LastError. |
aTimeout | const Integer | Maximale wachttijd in milliseconden tot de verbinding actief wordt. Standaard 10000 (10 seconden). |
True wanneer de client verbonden is en de WebSocket-handshake binnen de time-out is voltooid; anders False. (Boolean)
Connect is de blokkerende tegenhanger van het instellen van Active := True. Het stelt Active intern in en wacht vervolgens op een interne gebeurtenis totdat de verbinding tot stand is gebracht of de time-out verstrijkt. Als de client al verbonden is, retourneert de methode onmiddellijk True. Wanneer de functie True retourneert, is het veilig om direct WriteData aan te roepen, zonder op OnConnect te wachten. Gebruik in plaats daarvan Start als u een niet-blokkerende aanroep nodig hebt die vanaf een secundaire thread verbindt, of ConnectTask voor een niet-blokkerende verbinding in future-stijl (Delphi 2010+).
De overload met een out AError-parameter gedraagt zich identiek maar retourneert daarnaast de reden van een mislukte poging, zodat er geen event-handler nodig is om te weten waarom de verbinding niet is gelukt. LastError wordt vóór elke poging gewist en bevat daarna dezelfde tekst.
oClient := TsgcWebSocketClient.Create(nil);
oClient.Host := '127.0.0.1';
oClient.Port := 80;
if oClient.Connect(5000) then
oClient.WriteData('Hello from client')
else
ShowMessage('Connection failed');