IndyWebSocket

所属分类:网络编程
开发工具:Pascal
文件大小:435KB
下载次数:78
上传日期:2016-08-20 19:29:57
上 传 者lapinoir
说明:  WebSocket support for Delphi VCL/FMX (All versions)

文件列表:
IndyWebSocket (0, 2016-03-03)
... ...

# Indy WebSocket WebSocket and Socket.io for Delphi (FMX and VCL) Example: ```delphi uses IdWebSocketServer, IdHTTPWebSocketClient, IdSocketIOHandling, SuperObject; var WSServer: TIdWebSocketServer; WSClient: TIdHTTPWebSocketClient; procedure TMainForm.FormCreate(Sender: TObject); begin //Create server WSServer := TIdWebSocketServer.Create(Self); WSServer.DefaultPort := 12345; WSServer.SocketIO.OnEvent( cClientToServerEvent, procedure(const ASocket: ISocketIOContext; const AArgument: TSuperArray; const ACallback: ISocketIOCallback) begin AddMsgToMemo('SERVER', 'Request from Client - ' + AArgument.ToString); end ); WSServer.Active := True; //Create client WSClient := TIdHTTPWebSocketClient.Create(Self); WSClient.Port := 12345; WSClient.Host := 'localhost'; WSClient.SocketIOCompatible := True; WSClient.SocketIO.OnEvent( cServerToClientEvent, procedure(const ASocket: ISocketIOContext; const AArgument: TSuperArray; const ACallback: ISocketIOCallback) begin AddMsgToMemo('CLIENT', 'Request from Server - ' + AArgument.ToString); end ); WSClient.Connect; end; procedure TMainForm.AddMsgToMemo(ASenderName: String; AMsg: String); begin TThread.Synchronize(nil, procedure begin MsgMemo.Lines.Add(Format('[%s] %s', [ASenderName, AMsg])); end ); end; procedure TMainForm.StoCButtonClick(Sender: TObject); begin WSServer.SocketIO.EmitEventToAll(cServerToClientEvent, SO(['request', StoCEdit.Text])); end; procedure TMainForm.CtoSButtonClick(Sender: TObject); begin WSClient.SocketIO.Emit(cClientToServerEvent, SO(['request', CtoSEdit.Text])); end; ```

近期下载者

相关文件


收藏者