Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(DataFlex) Duplicate Python websocketsSee more WebSocket ExamplesDemonstrates how to duplicate the following Python client-side websocket snippet: async with websockets.connect('ws://192.168.1.35/websocket') as websocket: await websocket.send("http.controller_login:username=xxx&password=xxxxx") response = await websocket.recv()
Use ChilkatAx-win32.pkg Procedure Test Variant vRest Handle hoRest Boolean iSuccess Handle hoWs String sResponseBody Integer iStatusCode Boolean iFinalFrame String sReceivedStr String sTemp1 Integer iTemp1 Boolean bTemp1 // This example requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. // In Python, the following line of code does more than just connect: // // websockets.connect('ws://192.168.1.35/websocket') // // It is connecting to 192.168.1.35 without using TLS. If the URI starts with "wss://", then TLS should be used. // But this URI begins with just "ws:/", so no TLS. // Also, after connecting, a GET request is sent to the /websocket endpoint. // In summary, the websockets.connect function is establishing the connection and it sends a GET request. // First establish the connection. // No TLS, use the default HTTP port 80. Get Create (RefClass(cComChilkatRest)) To hoRest If (Not(IsComObjectCreated(hoRest))) Begin Send CreateComObject of hoRest End Get ComConnect Of hoRest "192.168.1.35" 80 False False To iSuccess If (iSuccess <> True) Begin Get ComLastErrorText Of hoRest To sTemp1 Showln sTemp1 Procedure_Return End Get Create (RefClass(cComChilkatWebSocket)) To hoWs If (Not(IsComObjectCreated(hoWs))) Begin Send CreateComObject of hoWs End // Tell the WebSocket to use this connection. Get pvComObject of hoRest to vRest Get ComUseConnection Of hoWs vRest To iSuccess If (iSuccess <> True) Begin Get ComLastErrorText Of hoWs To sTemp1 Showln sTemp1 Procedure_Return End // Add the standard WebSocket open handshake headers that will be needed. // (This adds the required HTTP request headers to the rest object.) Get ComAddClientHeaders Of hoWs To iSuccess // Now send the GET request to /websockets. Get ComFullRequestNoBody Of hoRest "GET" "/websockets" To sResponseBody Get ComLastMethodSuccess Of hoRest To bTemp1 If (bTemp1 <> True) Begin Get ComLastErrorText Of hoRest To sTemp1 Showln sTemp1 Procedure_Return End // If successful, the HTTP response status code should be 101, // and the response body will be empty. (If it failed, we'll have a look // at the response body..) Get ComResponseStatusCode Of hoRest To iStatusCode Showln "Response status code: " iStatusCode If (iStatusCode <> 101) Begin Showln sResponseBody Showln "-- Failed because of unexpected response status code." Procedure_Return End // We have the expected 101 response, so let's now validate the // contents of the response. Get ComValidateServerHandshake Of hoWs To iSuccess If (iSuccess <> True) Begin Get ComLastErrorText Of hoWs To sTemp1 Showln sTemp1 Procedure_Return End Showln "WebSocket connection successful." // The application may now begin sending and receiving frames on the WebSocket connection. // The 1st frame sent by the Python snippet is: // // websocket.send("http.controller_login:username=xxx&password=xxxxx") // // Send the same using Chilkat, and get the response. Move True To iFinalFrame Get ComSendFrame Of hoWs "http.controller_login:username=xxx&password=xxxxx" iFinalFrame To iSuccess If (iSuccess <> True) Begin Get ComLastErrorText Of hoWs To sTemp1 Showln sTemp1 Procedure_Return End // Read an incoming frame. Get ComReadFrame Of hoWs To iSuccess If (iSuccess <> True) Begin Showln "Failed to receive a frame" Get ComReadFrameFailReason Of hoWs To iTemp1 Showln "ReadFrame fail reason = " iTemp1 Get ComLastErrorText Of hoWs To sTemp1 Showln sTemp1 Procedure_Return End // Show the string that was received. Get ComGetFrameData Of hoWs To sReceivedStr Showln "Received: " sReceivedStr // Continue with whatever additional communications are desired... // .... // End_Procedure |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.