Saltar para o conteúdo principal
Versão: v20 R4 BETA

WebSocketConnection

Histórico
VersãoMudanças
v20Adicionado

A API da classe WebSocketConnection permite-lhe tratar as ligações WebSocket, uma vez estabelecidas utilizando a classe WebSocketServer.

info

Para uma visão geral e alguns exemplos da implementação do servidor WebSocket em 4D, consulte a classe WebSocketServer.

Objecto WebSocketConnection

Um objeto WebSocketConnection é automaticamente criado quando a função de retorno de chamada WSHandler.onConnection do objecto WebSocketServer devolve um objecto connectionHandler.

Os objectos Httprequest fornecem as seguintes propriedades e funções:

.handler : Objecto    o acessor que obtém o objecto connectionHandler utilizado para iniciar a ligação
.id : Integer    o identificador único da ligação
.send( message : Text )
.send( message : Blob )
.send( message : Object )
    envia uma mensagem ao cliente
.status : Text    o estado da ligação (pode ser "Closing", "Closed" ou "Connected")
.terminate( { code : Integer ; message : Text } )    força o encerramento da ligação
.wss : 4D.WebSocketServer    o WebSocketServer objecto pai da ligação

.handler

.handler : Objecto

Descrição

The .handler property contains o acessor que obtém o objecto connectionHandler utilizado para iniciar a ligação.

.id

.id : Integer

Descrição

A propriedade .id contém o identificador único da ligação.

Esta propriedade é só de leitura.

.send()

.send( message : Text )
.send( message : Blob )
.send( message : Object )

ParâmetroTipoDescrição
messageText / Blob / Object->A mensagem a enviar

|

Descrição

A função .send() envia uma mensagem ao cliente.

Os conteúdos seguintes são enviados em função do tipo de mensagem:

TipoConteúdo
TextTexto em UTF-8
BlobDados binários
ObjectTexto em JSON UTF-8 (o mesmo resultado que com JSON Stringify)

.status

.status : Text

Descrição

A propriedade .status contém o estado da ligação (pode ser "Closing", "Closed" ou "Connected").

Esta propriedade é só de leitura.

.terminate()

.terminate( { code : Integer ; message : Text } )

ParâmetroTipoDescrição
codeInteger->Código de erro enviado ao cliente (deve ser > 3000, caso contrário a mensagem não é enviada)
messageText->Mensagem de erro enviada ao cliente

|

Descrição

A função .terminate() força o encerramento da ligação.

Um code e uma message podem ser enviados ao cliente durante o encerramento para indicar o motivo da rescisão.

.wss

.wss : 4D.WebSocketServer

Descrição

A propriedade .wss contém o WebSocketServer objecto pai da ligação.

Esta propriedade é só de leitura.