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
(Go) Socket Send and Receive BinDataDemonstrates the Chilkat Socket ReceiveBdN and SendBd methods.
// This example requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. sock := chilkat.NewSocket() // -------------------------------------------------------------------- // This example uses the public TCP echo service at https://tcpbin.com/ // -------------------------------------------------------------------- useTls := false port := 4242 maxWaitMs := 5000 success := sock.Connect("tcpbin.com",port,useTls,maxWaitMs) if success == false { fmt.Println(sock.LastErrorText()) sock.DisposeSocket() return } // Wait a max of 2 seconds for a response.. sock.SetMaxReadIdleMs(2000) // Send 26 bytes contained in a Chilkat BinData bdToSend := chilkat.NewBinData() i := 0 byteVal := 65 for i < 26 { bdToSend.AppendByte(byteVal) byteVal = byteVal + 1 i = i + 1 } // Send the contents of the BinData // Pass zero's in the 2nd and 3rd arguments to send the entire contents of the BinData. sock.SendBd(bdToSend,0,0) // The tcpbin.com echo server only echoes after receiving an LF (linefeed char) sock.SendByte(10) // The echo server will echo back whatever is sent to it. // We should be able to read the same bytes back.. bdRecv := chilkat.NewBinData() // Receive the 26 bytes previously sent, plus the LF char. success = sock.ReceiveBdN(27,bdRecv) if success == false { fmt.Println(sock.LastErrorText()) sock.DisposeSocket() bdToSend.DisposeBinData() bdRecv.DisposeBinData() return } // Show the contents of bdRecv in hex format fmt.Println(*bdRecv.GetEncoded("hex")) // Output: 4142434445464748494A4B4C4D4E4F505152535455565758595A0A sock.DisposeSocket() bdToSend.DisposeBinData() bdRecv.DisposeBinData() |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.