WebSocketClient 类 |
命名空间: HslCommunication.WebSocket
WebSocketClient 类型公开以下成员。
名称 | 说明 | |
---|---|---|
WebSocketClient(String) |
使用指定的url来实例化一个默认的对象,例如 ws://127.0.0.1:1883/A/B?C=123456 或是 ws://www.hslcommunication.cn:1883 Use the specified url to instantiate a default object, such as ws://127.0.0.1:1883/A/B?C=123456 or ws://www.hslcommunication.cn:1883s | |
WebSocketClient(String, Int32) |
使用指定的ip,端口来实例化一个默认的对象 Use the specified ip and port to instantiate a default objects | |
WebSocketClient(String, Int32, String) |
使用指定的ip,端口,额外的url信息来实例化一个默认的对象 Use the specified ip, port, and additional url information to instantiate a default object |
名称 | 说明 | |
---|---|---|
ConnectTimeOut |
获取或设置当前客户端的连接超时时间,默认10,000毫秒,单位ms Gets or sets the connection timeout of the current client. The default is 10,000 milliseconds. The unit is ms. | |
IpAddress |
Mqtt服务器的ip地址 IP address of Mqtt server | |
IsClosed |
获取当前的客户端状态是否关闭了连接,当自己手动处理网络异常事件的时候,在重连之前就需要判断是否关闭了连接。 Obtain whether the current client status has closed the connection. When manually handling network abnormal events, you need to determine whether the connection is closed before reconnecting. | |
LogNet |
组件的日志工具,支持日志记录,只要实例化后,当前网络的基本信息,就以DEBUG等级进行输出 (继承自 NetworkBase。)The component's logging tool supports logging. As long as the instantiation of the basic network information, the output will be output at DEBUG | |
Port |
端口号。默认1883 The port number. Default 1883 | |
Token |
网络类的身份令牌,在hsl协议的模式下会有效,在和设备进行通信的时候是无效的 (继承自 NetworkBase。)Network-type identity tokens will be valid in the hsl protocol mode and will not be valid when communicating with the device |
名称 | 说明 | |
---|---|---|
CheckRemoteToken |
检查当前的头子节信息的令牌是否是正确的,仅用于某些特殊的协议实现 (继承自 NetworkBase。)Check whether the token of the current header subsection information is correct, only for some special protocol implementations | |
ConnectClose |
关闭Mqtt服务器的连接。 Close the connection to the Mqtt server. | |
ConnectCloseAsync |
关闭Mqtt服务器的连接。 Close the connection to the Mqtt server. | |
ConnectServer |
连接服务器,实例化客户端之后,至少要调用成功一次,如果返回失败,那些请过一段时间后重新调用本方法连接。 After connecting to the server, the client must be called at least once after instantiating the client. If the return fails, please call this method to connect again after a period of time. | |
ConnectServer(String) |
连接服务器,实例化客户端之后,至少要调用成功一次,如果返回失败,那些请过一段时间后重新调用本方法连接。 After connecting to the server, the client must be called at least once after instantiating the client. If the return fails, please call this method to connect again after a period of time. | |
ConnectServerAsync |
连接服务器,实例化客户端之后,至少要调用成功一次,如果返回失败,那些请过一段时间后重新调用本方法连接。 After connecting to the server, the client must be called at least once after instantiating the client. If the return fails, please call this method to connect again after a period of time. | |
ConnectServerAsync(String) |
连接服务器,实例化客户端之后,至少要调用成功一次,如果返回失败,那些请过一段时间后重新调用本方法连接。 After connecting to the server, the client must be called at least once after instantiating the client. If the return fails, please call this method to connect again after a period of time. | |
CreateSocketAndConnect(String, Int32) |
创建一个新的socket对象并连接到远程的地址,默认超时时间为10秒钟,需要指定ip地址以及端口号信息 (继承自 NetworkBase。)Create a new socket object and connect to the remote address. The default timeout is 10 seconds. You need to specify the IP address and port number. | |
CreateSocketAndConnect(IPEndPoint, Int32, IPEndPoint) |
创建一个新的socket对象并连接到远程的地址,需要指定远程终结点,超时时间(单位是毫秒),如果需要绑定本地的IP或是端口,传入 local对象 (继承自 NetworkBase。)To create a new socket object and connect to the remote address, you need to specify the remote endpoint, the timeout period (in milliseconds), if you need to bind the local IP or port, pass in the local object | |
CreateSocketAndConnect(String, Int32, Int32) |
创建一个新的socket对象并连接到远程的地址,需要指定ip地址以及端口号信息,还有超时时间,单位是毫秒 (继承自 NetworkBase。)To create a new socket object and connect to a remote address, you need to specify the IP address and port number information, and the timeout period in milliseconds | |
CreateSocketAndConnectAsync(String, Int32) |
创建一个新的socket对象并连接到远程的地址,默认超时时间为10秒钟,需要指定ip地址以及端口号信息 (继承自 NetworkBase。)Create a new socket object and connect to the remote address. The default timeout is 10 seconds. You need to specify the IP address and port number. | |
CreateSocketAndConnectAsync(IPEndPoint, Int32, IPEndPoint) |
创建一个新的socket对象并连接到远程的地址,需要指定远程终结点,超时时间(单位是毫秒),如果需要绑定本地的IP或是端口,传入 local对象 (继承自 NetworkBase。)To create a new socket object and connect to the remote address, you need to specify the remote endpoint, the timeout period (in milliseconds), if you need to bind the local IP or port, pass in the local object | |
CreateSocketAndConnectAsync(String, Int32, Int32) |
创建一个新的socket对象并连接到远程的地址,需要指定ip地址以及端口号信息,还有超时时间,单位是毫秒 (继承自 NetworkBase。)To create a new socket object and connect to a remote address, you need to specify the IP address and port number information, and the timeout period in milliseconds | |
DeleteFileByName |
删除一个指定的文件,如果文件不存在,直接返回 True,如果文件存在则直接删除,删除成功返回 True,如果发生了异常,返回False (继承自 NetworkBase。)Delete a specified file, if the file does not exist, return True directly, if the file exists, delete it directly, if the deletion is successful, return True, if an exception occurs, return False | |
Dispose | 释放被 WebSocketClient 使用的所有资源 | |
Dispose(Boolean) |
释放当前的对象
| |
Equals | (继承自 Object。) | |
Finalize | (继承自 Object。) | |
GetHashCode | (继承自 Object。) | |
GetType | (继承自 Object。) | |
MemberwiseClone | (继承自 Object。) | |
ReadStream |
读取流中的数据到缓存区,读取的长度需要按照实际的情况来判断 (继承自 NetworkBase。)Read the data in the stream to the buffer area. The length of the read needs to be determined according to the actual situation. | |
ReadStreamAsync |
读取流中的数据到缓存区,读取的长度需要按照实际的情况来判断 (继承自 NetworkBase。)Read the data in the stream to the buffer area. The length of the read needs to be determined according to the actual situation. | |
Receive(SslStream, Int32, Int32, ActionInt64, Int64) |
接收固定长度的字节数组,允许指定超时时间,默认为60秒,当length大于0时,接收固定长度的数据内容,当length小于0时,接收不大于2048长度的随机数据信息 (继承自 NetworkBase。)Receiving a fixed-length byte array, allowing a specified timeout time. The default is 60 seconds. When length is greater than 0, fixed-length data content is received. When length is less than 0, random data information of a length not greater than 2048 is received. | |
Receive(Socket, Int32, Int32, ActionInt64, Int64) |
接收固定长度的字节数组,允许指定超时时间,默认为60秒,当length大于0时,接收固定长度的数据内容,当length小于0时,接收不大于2048长度的随机数据信息 (继承自 NetworkBase。)Receiving a fixed-length byte array, allowing a specified timeout time. The default is 60 seconds. When length is greater than 0, fixed-length data content is received. When length is less than 0, random data information of a length not greater than 2048 is received. | |
Receive(SslStream, Byte, Int32, Int32, Int32, ActionInt64, Int64) |
接收固定长度的字节数组,允许指定超时时间,默认为60秒,当length大于0时,接收固定长度的数据内容,当length小于0时,buffer长度的缓存数据 (继承自 NetworkBase。)Receiving a fixed-length byte array, allowing a specified timeout time. The default is 60 seconds. When length is greater than 0, fixed-length data content is received. When length is less than 0, random data information of a length not greater than 2048 is received. | |
Receive(Socket, Byte, Int32, Int32, Int32, ActionInt64, Int64) |
接收固定长度的字节数组,允许指定超时时间,默认为60秒,当length大于0时,接收固定长度的数据内容,当length小于0时,buffer长度的缓存数据 (继承自 NetworkBase。)Receiving a fixed-length byte array, allowing a specified timeout time. The default is 60 seconds. When length is greater than 0, fixed-length data content is received. When length is less than 0, random data information of a length not greater than 2048 is received. | |
ReceiveAndCheckBytes |
[自校验] 接收一条完整的同步数据,包含头子节和内容字节,基础的数据,如果结果异常,则结束通讯 (继承自 NetworkBase。)[Self-checking] Receive a complete synchronization data, including header subsection and content bytes, basic data, if the result is abnormal, the communication ends | |
ReceiveAndCheckBytesAsync |
[自校验] 接收一条完整的同步数据,包含头子节和内容字节,基础的数据,如果结果异常,则结束通讯 (继承自 NetworkBase。)[Self-checking] Receive a complete synchronization data, including header subsection and content bytes, basic data, if the result is abnormal, the communication ends | |
ReceiveAsync(SslStream, Int32, Int32, ActionInt64, Int64) |
接收固定长度的字节数组,允许指定超时时间,默认为60秒,当length大于0时,接收固定长度的数据内容,当length小于0时,接收不大于2048长度的随机数据信息 (继承自 NetworkBase。)Receiving a fixed-length byte array, allowing a specified timeout time. The default is 60 seconds. When length is greater than 0, fixed-length data content is received. When length is less than 0, random data information of a length not greater than 2048 is received. | |
ReceiveAsync(Socket, Int32, Int32, ActionInt64, Int64) |
接收固定长度的字节数组,允许指定超时时间,默认为60秒,当length大于0时,接收固定长度的数据内容,当length小于0时,接收不大于2048长度的随机数据信息 (继承自 NetworkBase。)Receiving a fixed-length byte array, allowing a specified timeout time. The default is 60 seconds. When length is greater than 0, fixed-length data content is received. When length is less than 0, random data information of a length not greater than 2048 is received. | |
ReceiveAsync(SslStream, Byte, Int32, Int32, Int32, ActionInt64, Int64) |
接收固定长度的字节数组,允许指定超时时间,默认为60秒,当length大于0时,接收固定长度的数据内容,当length小于0时,buffer长度的缓存数据 (继承自 NetworkBase。)Receiving a fixed-length byte array, allowing a specified timeout time. The default is 60 seconds. When length is greater than 0, fixed-length data content is received. When length is less than 0, random data information of a length not greater than 2048 is received. | |
ReceiveAsync(Socket, Byte, Int32, Int32, Int32, ActionInt64, Int64) |
接收固定长度的字节数组,允许指定超时时间,默认为60秒,当length大于0时,接收固定长度的数据内容,当length小于0时,buffer长度的缓存数据 (继承自 NetworkBase。)Receiving a fixed-length byte array, allowing a specified timeout time. The default is 60 seconds. When length is greater than 0, fixed-length data content is received. When length is less than 0, random data information of a length not greater than 2048 is received. | |
ReceiveByMessage |
接收一条完整的 数据内容,需要指定超时时间,单位为毫秒。 (继承自 NetworkBase。)Receive a complete data content, Need to specify a timeout period in milliseconds | |
ReceiveByMessageAsync |
接收一条完整的 数据内容,需要指定超时时间,单位为毫秒。 (继承自 NetworkBase。)Receive a complete data content, Need to specify a timeout period in milliseconds | |
ReceiveBytesContentFromSocket |
[自校验] 从网络中接收一串字节数据,如果结果异常,则结束通讯 (继承自 NetworkBase。)[Self-checking] Receive a string of byte data from the network. If the result is abnormal, the communication ends. | |
ReceiveBytesContentFromSocketAsync |
[自校验] 从网络中接收一串字节数据,如果结果异常,则结束通讯 (继承自 NetworkBase。)[Self-checking] Receive a string of byte data from the network. If the result is abnormal, the communication ends. | |
ReceiveCommandLineFromSocket(Socket, Byte, Int32) |
接收一行命令数据,需要自己指定这个结束符,默认超时时间为60秒,也即是60000,单位是毫秒 (继承自 NetworkBase。)To receive a line of command data, you need to specify the terminator yourself. The default timeout is 60 seconds, which is 60,000, in milliseconds. | |
ReceiveCommandLineFromSocket(Socket, Byte, Byte, Int32) |
接收一行命令数据,需要自己指定这个结束符,默认超时时间为60秒,也即是60000,单位是毫秒 (继承自 NetworkBase。)To receive a line of command data, you need to specify the terminator yourself. The default timeout is 60 seconds, which is 60,000, in milliseconds. | |
ReceiveCommandLineFromSocketAsync(Socket, Byte, Int32) |
接收一行命令数据,需要自己指定这个结束符,默认超时时间为60秒,也即是60000,单位是毫秒 (继承自 NetworkBase。)To receive a line of command data, you need to specify the terminator yourself. The default timeout is 60 seconds, which is 60,000, in milliseconds. | |
ReceiveCommandLineFromSocketAsync(Socket, Byte, Byte, Int32) |
接收一行命令数据,需要自己指定这个结束符,默认超时时间为60秒,也即是60000,单位是毫秒 (继承自 NetworkBase。)To receive a line of command data, you need to specify the terminator yourself. The default timeout is 60 seconds, which is 60,000, in milliseconds. | |
ReceiveFileFromSocket(Socket, Stream, ActionInt64, Int64) |
[自校验] 从网络中接收一个文件,写入数据流,如果结果异常,则结束通讯,参数顺序文件名,文件大小,文件标识,上传人 (继承自 NetworkXBase。)[Self-checking] Receive a file from the network. If the result is abnormal, the communication ends. | |
ReceiveFileFromSocket(Socket, String, ActionInt64, Int64) |
[自校验] 从网络中接收一个文件,如果结果异常,则结束通讯 (继承自 NetworkXBase。)[Self-checking] Receive a file from the network. If the result is abnormal, the communication ends. | |
ReceiveFileFromSocketAsync(Socket, Stream, ActionInt64, Int64) |
[自校验] 从网络中接收一个文件,写入数据流,如果结果异常,则结束通讯,参数顺序文件名,文件大小,文件标识,上传人 (继承自 NetworkXBase。)[Self-checking] Receive a file from the network. If the result is abnormal, the communication ends. | |
ReceiveFileFromSocketAsync(Socket, String, ActionInt64, Int64) |
[自校验] 从网络中接收一个文件,如果结果异常,则结束通讯 (继承自 NetworkXBase。)[Self-checking] Receive a file from the network. If the result is abnormal, the communication ends. | |
ReceiveFileHeadFromSocket |
[自校验] 从套接字中接收文件头信息 (继承自 NetworkXBase。)[Self-checking] Receive file header information from socket | |
ReceiveFileHeadFromSocketAsync |
[自校验] 从套接字中接收文件头信息 (继承自 NetworkXBase。)[Self-checking] Receive file header information from socket | |
ReceiveHslMessage |
接收一条hsl协议的数据信息,自动解析,解压,解码操作,获取最后的实际的数据,接收结果依次为暗号,用户码,负载数据 (继承自 NetworkBase。)Receive a piece of hsl protocol data information, automatically parse, decompress, and decode operations to obtain the last actual data. The result is a opCode, user code, and payload data in order. | |
ReceiveHslMessageAsync |
接收一条hsl协议的数据信息,自动解析,解压,解码操作,获取最后的实际的数据,接收结果依次为暗号,用户码,负载数据 (继承自 NetworkBase。)Receive a piece of hsl protocol data information, automatically parse, decompress, and decode operations to obtain the last actual data. The result is a opCode, user code, and payload data in order. | |
ReceiveMqttFile |
使用MQTT协议从网络接收字节数组,然后写入文件或流中,支持进度报告 (继承自 NetworkBase。)Use MQTT protocol to receive byte array from the network, and then write it to file or stream, support progress report | |
ReceiveMqttFileAsync |
使用MQTT协议从网络接收字节数组,然后写入文件或流中,支持进度报告 (继承自 NetworkBase。)Use MQTT protocol to receive byte array from the network, and then write it to file or stream, support progress report | |
ReceiveMqttMessage(SslStream, Int32, ActionInt64, Int64) |
接收一条完整的MQTT协议的报文信息,包含控制码和负载数据 (继承自 NetworkBase。)Receive a message of a completed MQTT protocol, including control code and payload data | |
ReceiveMqttMessage(Socket, Int32, ActionInt64, Int64) |
接收一条完整的MQTT协议的报文信息,包含控制码和负载数据 (继承自 NetworkBase。)Receive a message of a completed MQTT protocol, including control code and payload data | |
ReceiveMqttMessageAsync(SslStream, Int32, ActionInt64, Int64) |
接收一条完整的MQTT协议的报文信息,包含控制码和负载数据 (继承自 NetworkBase。)Receive a message of a completed MQTT protocol, including control code and payload data | |
ReceiveMqttMessageAsync(Socket, Int32, ActionInt64, Int64) |
接收一条完整的MQTT协议的报文信息,包含控制码和负载数据 (继承自 NetworkBase。)Receive a message of a completed MQTT protocol, including control code and payload data | |
ReceiveMqttStream |
使用MQTT协议从socket接收指定长度的字节数组,然后全部写入到流中,可以指定进度报告 (继承自 NetworkBase。)Use the MQTT protocol to receive a byte array of specified length from the socket, and then write all of them to the stream, and you can specify a progress report | |
ReceiveMqttStreamAsync |
使用MQTT协议从socket接收指定长度的字节数组,然后全部写入到流中,可以指定进度报告 (继承自 NetworkBase。)Use the MQTT protocol to receive a byte array of specified length from the socket, and then write all of them to the stream, and you can specify a progress report | |
ReceiveRedisCommand |
从网络接收一条完整的redis报文的消息 (继承自 NetworkBase。)Receive a complete redis message from the network | |
ReceiveRedisCommandAsync |
从网络接收一条完整的redis报文的消息 (继承自 NetworkBase。)Receive a complete redis message from the network | |
ReceiveRedisCommandString |
接收一行基于redis协议的字符串的信息,需要指定固定的长度 (继承自 NetworkBase。)Receive a line of information based on the redis protocol string, you need to specify a fixed length | |
ReceiveRedisCommandStringAsync |
接收一行基于redis协议的字符串的信息,需要指定固定的长度 (继承自 NetworkBase。)Receive a line of information based on the redis protocol string, you need to specify a fixed length | |
ReceiveStringArrayContentFromSocket |
[自校验] 从网络中接收一个字符串数组,如果结果异常,则结束通讯 (继承自 NetworkBase。)[Self-check] Receive an array of strings from the network. If the result is abnormal, the communication ends. | |
ReceiveStringArrayContentFromSocketAsync |
[自校验] 从网络中接收一个字符串数组,如果结果异常,则结束通讯 (继承自 NetworkBase。)[Self-check] Receive an array of strings from the network. If the result is abnormal, the communication ends. | |
ReceiveStringContentFromSocket |
[自校验] 从网络中接收一个字符串数据,如果结果异常,则结束通讯 (继承自 NetworkBase。)[Self-checking] Receive a string of data from the network. If the result is abnormal, the communication ends. | |
ReceiveStringContentFromSocketAsync |
[自校验] 从网络中接收一个字符串数据,如果结果异常,则结束通讯 (继承自 NetworkBase。)[Self-checking] Receive a string of data from the network. If the result is abnormal, the communication ends. | |
ReceiveVigorMessage |
从Socket接收一条VigorPLC的消息数据信息,指定套接字对象及超时时间 (继承自 NetworkBase。)Receive a message data information of VigorPLC from Socket, specify socket object and timeout time | |
ReceiveVigorMessageAsync |
从Socket接收一条VigorPLC的消息数据信息,指定套接字对象及超时时间 (继承自 NetworkBase。)Receive a message data information of VigorPLC from Socket, specify socket object and timeout time | |
ReceiveWebSocketPayload(SslStream) |
从socket接收一条完整的websocket数据,返回WebSocketMessage的数据信息 (继承自 NetworkBase。)Receive a complete websocket data from the socket, return the data information of the WebSocketMessage | |
ReceiveWebSocketPayload(Socket) |
从socket接收一条完整的websocket数据,返回WebSocketMessage的数据信息 (继承自 NetworkBase。)Receive a complete websocket data from the socket, return the data information of the WebSocketMessage | |
ReceiveWebSocketPayloadAsync(SslStream) |
从socket接收一条完整的websocket数据,返回WebSocketMessage的数据信息 (继承自 NetworkBase。)Receive a complete websocket data from the socket, return the data information of the WebSocketMessage | |
ReceiveWebSocketPayloadAsync(Socket) |
从socket接收一条完整的websocket数据,返回WebSocketMessage的数据信息 (继承自 NetworkBase。)Receive a complete websocket data from the socket, return the data information of the WebSocketMessage | |
Send(SslStream, Byte) |
发送消息给套接字,直到完成的时候返回,经过测试,本方法是线程安全的。 (继承自 NetworkBase。)Send a message to the socket until it returns when completed. After testing, this method is thread-safe. | |
Send(Socket, Byte) |
发送消息给套接字,直到完成的时候返回,经过测试,本方法是线程安全的。 (继承自 NetworkBase。)Send a message to the socket until it returns when completed. After testing, this method is thread-safe. | |
Send(SslStream, Byte, Int32, Int32) |
发送消息给套接字,直到完成的时候返回,经过测试,本方法是线程安全的。 (继承自 NetworkBase。)Send a message to the socket until it returns when completed. After testing, this method is thread-safe. | |
Send(Socket, Byte, Int32, Int32) |
发送消息给套接字,直到完成的时候返回,经过测试,本方法是线程安全的。 (继承自 NetworkBase。)Send a message to the socket until it returns when completed. After testing, this method is thread-safe. | |
SendAccountAndCheckReceive |
[自校验] 直接发送字符串数组并确认对方接收完成数据,如果结果异常,则结束通讯 (继承自 NetworkBase。)[Self-check] Send string array directly and confirm that the other party has received the completed data. If the result is abnormal, the communication ends. | |
SendAccountAndCheckReceiveAsync |
[自校验] 直接发送字符串数组并确认对方接收完成数据,如果结果异常,则结束通讯 (继承自 NetworkBase。)[Self-check] Send string array directly and confirm that the other party has received the completed data. If the result is abnormal, the communication ends. | |
SendAsync(SslStream, Byte) |
发送消息给套接字,直到完成的时候返回,经过测试,本方法是线程安全的。 (继承自 NetworkBase。)Send a message to the socket until it returns when completed. After testing, this method is thread-safe. | |
SendAsync(Socket, Byte) |
发送消息给套接字,直到完成的时候返回,经过测试,本方法是线程安全的。 (继承自 NetworkBase。)Send a message to the socket until it returns when completed. After testing, this method is thread-safe. | |
SendAsync(SslStream, Byte, Int32, Int32) |
发送消息给套接字,直到完成的时候返回,经过测试,本方法是线程安全的。 (继承自 NetworkBase。)Send a message to the socket until it returns when completed. After testing, this method is thread-safe. | |
SendAsync(Socket, Byte, Int32, Int32) |
发送消息给套接字,直到完成的时候返回,经过测试,本方法是线程安全的。 (继承自 NetworkBase。)Send a message to the socket until it returns when completed. After testing, this method is thread-safe. | |
SendBaseAndCheckReceive |
[自校验] 发送字节数据并确认对方接收完成数据,如果结果异常,则结束通讯 (继承自 NetworkBase。)[Self-check] Send the byte data and confirm that the other party has received the completed data. If the result is abnormal, the communication ends. | |
SendBaseAndCheckReceiveAsync |
[自校验] 发送字节数据并确认对方接收完成数据,如果结果异常,则结束通讯 (继承自 NetworkBase。)[Self-check] Send the byte data and confirm that the other party has received the completed data. If the result is abnormal, the communication ends. | |
SendBytesAndCheckReceive |
[自校验] 发送字节数据并确认对方接收完成数据,如果结果异常,则结束通讯 (继承自 NetworkBase。)[Self-check] Send the byte data and confirm that the other party has received the completed data. If the result is abnormal, the communication ends. | |
SendBytesAndCheckReceiveAsync |
[自校验] 发送字节数据并确认对方接收完成数据,如果结果异常,则结束通讯 (继承自 NetworkBase。)[Self-check] Send the byte data and confirm that the other party has received the completed data. If the result is abnormal, the communication ends. | |
SendFileAndCheckReceive(Socket, Stream, String, String, String, ActionInt64, Int64) |
[自校验] 将流数据发送至套接字,具体发送细节将在继承类中实现,如果结果异常,则结束通讯 (继承自 NetworkXBase。)[Self-checking] Send stream data to the socket. The specific sending details will be implemented in the inherited class. If the result is abnormal, the communication will be terminated | |
SendFileAndCheckReceive(Socket, String, String, String, String, ActionInt64, Int64) |
[自校验] 将文件数据发送至套接字,具体发送细节将在继承类中实现,如果结果异常,则结束通讯 (继承自 NetworkXBase。)[Self-checking] Send the file data to the socket. The specific sending details will be implemented in the inherited class. If the result is abnormal, the communication will end | |
SendFileAndCheckReceiveAsync(Socket, Stream, String, String, String, ActionInt64, Int64) |
[自校验] 将流数据发送至套接字,具体发送细节将在继承类中实现,如果结果异常,则结束通讯 (继承自 NetworkXBase。)[Self-checking] Send stream data to the socket. The specific sending details will be implemented in the inherited class. If the result is abnormal, the communication will be terminated | |
SendFileAndCheckReceiveAsync(Socket, String, String, String, String, ActionInt64, Int64) |
[自校验] 将文件数据发送至套接字,具体发送细节将在继承类中实现,如果结果异常,则结束通讯 (继承自 NetworkXBase。)[Self-checking] Send the file data to the socket. The specific sending details will be implemented in the inherited class. If the result is abnormal, the communication will end | |
SendFileStreamToSocket |
[自校验] 将文件数据发送至套接字,如果结果异常,则结束通讯 (继承自 NetworkXBase。)[Self-check] Send the file data to the socket. If the result is abnormal, the communication is ended. | |
SendFileStreamToSocketAsync |
[自校验] 将文件数据发送至套接字,如果结果异常,则结束通讯 (继承自 NetworkXBase。)[Self-check] Send the file data to the socket. If the result is abnormal, the communication is ended. | |
SendMqttFile(Socket, Stream, String, String, ActionInt64, Int64, AesCryptography, HslCancelToken) |
使用MQTT协议将一个数据流发送到网络上去,需要保存的文件名,可选指定文件描述信息,进度报告 (继承自 NetworkBase。)Use the MQTT protocol to send a data stream to the network, the file name that needs to be saved, optional file description information, progress report | |
SendMqttFile(Socket, String, String, String, ActionInt64, Int64, AesCryptography, HslCancelToken) |
使用MQTT协议将一个文件发送到网络上去,需要指定文件名,保存的文件名,可选指定文件描述信息,进度报告 (继承自 NetworkBase。)To send a file to the network using the MQTT protocol, you need to specify the file name, the saved file name, optionally specify the file description information, and the progress report | |
SendMqttFileAsync(Socket, Stream, String, String, ActionInt64, Int64, AesCryptography, HslCancelToken) |
使用MQTT协议将一个数据流发送到网络上去,需要保存的文件名,可选指定文件描述信息,进度报告 (继承自 NetworkBase。)Use the MQTT protocol to send a data stream to the network, the file name that needs to be saved, optional file description information, progress report | |
SendMqttFileAsync(Socket, String, String, String, ActionInt64, Int64, AesCryptography, HslCancelToken) |
使用MQTT协议将一个文件发送到网络上去,需要指定文件名,保存的文件名,可选指定文件描述信息,进度报告 (继承自 NetworkBase。)To send a file to the network using the MQTT protocol, you need to specify the file name, the saved file name, optionally specify the file description information, and the progress report | |
SendMqttStream |
使用MQTT协议将流中的数据读取到字节数组,然后都写入到socket里面,可以指定进度报告,主要用于将文件发送到网络。 (继承自 NetworkBase。)Use the MQTT protocol to read the data in the stream into a byte array, and then write them all into the socket. You can specify a progress report, which is mainly used to send files to the network. | |
SendMqttStreamAsync |
使用MQTT协议将流中的数据读取到字节数组,然后都写入到socket里面,可以指定进度报告,主要用于将文件发送到网络。 (继承自 NetworkBase。)Use the MQTT protocol to read the data in the stream into a byte array, and then write them all into the socket. You can specify a progress report, which is mainly used to send files to the network. | |
SendServer(String) |
发送数据到WebSocket的服务器 Send data to WebSocket server | |
SendServer(Boolean, String) |
发送数据到WebSocket的服务器,可以指定是否进行掩码操作 Send data to the WebSocket server, you can specify whether to perform a mask operation | |
SendServer(Int32, Boolean, Byte) |
发送自定义的命令到WebSocket服务器,可以指定操作码,是否掩码操作,原始字节数据 Send custom commands to the WebSocket server, you can specify the operation code, whether to mask operation, raw byte data | |
SendStreamToSocket |
发送一个流的所有数据到指定的网络套接字,需要指定发送的数据长度,支持按照百分比的进度报告 (继承自 NetworkBase。)Send all the data of a stream to the specified network socket. You need to specify the length of the data to be sent. It supports the progress report in percentage. | |
SendStreamToSocketAsync |
发送一个流的所有数据到指定的网络套接字,需要指定发送的数据长度,支持按照百分比的进度报告 (继承自 NetworkBase。)Send all the data of a stream to the specified network socket. You need to specify the length of the data to be sent. It supports the progress report in percentage. | |
SendStringAndCheckReceive(Socket, Int32, String) |
[自校验] 直接发送字符串数据并确认对方接收完成数据,如果结果异常,则结束通讯 (继承自 NetworkBase。)[Self-checking] Send string data directly and confirm that the other party has received the completed data. If the result is abnormal, the communication ends. | |
SendStringAndCheckReceive(Socket, Int32, String) |
[自校验] 直接发送字符串数组并确认对方接收完成数据,如果结果异常,则结束通讯 (继承自 NetworkBase。)[Self-check] Send string array directly and confirm that the other party has received the completed data. If the result is abnormal, the communication ends. | |
SendStringAndCheckReceiveAsync(Socket, Int32, String) |
[自校验] 直接发送字符串数据并确认对方接收完成数据,如果结果异常,则结束通讯 (继承自 NetworkBase。)[Self-checking] Send string data directly and confirm that the other party has received the completed data. If the result is abnormal, the communication ends. | |
SendStringAndCheckReceiveAsync(Socket, Int32, String) |
[自校验] 直接发送字符串数组并确认对方接收完成数据,如果结果异常,则结束通讯 (继承自 NetworkBase。)[Self-check] Send string array directly and confirm that the other party has received the completed data. If the result is abnormal, the communication ends. | |
ToString | (重写 NetworkXBaseToString.) | |
WriteStream |
将缓冲区的数据写入到流里面去 (继承自 NetworkBase。)Write the buffer data to the stream | |
WriteStreamAsync |
将缓冲区的数据写入到流里面去 (继承自 NetworkBase。)Write the buffer data to the stream | |
WriteStreamFromSocket |
从套接字中接收所有的数据然后写入到指定的流当中去,需要指定数据的长度,支持按照百分比进行进度报告 (继承自 NetworkBase。)Receives all data from the socket and writes it to the specified stream. The length of the data needs to be specified, and progress reporting is supported in percentage. | |
WriteStreamFromSocketAsync |
从套接字中接收所有的数据然后写入到指定的流当中去,需要指定数据的长度,支持按照百分比进行进度报告 (继承自 NetworkBase。)Receives all data from the socket and writes it to the specified stream. The length of the data needs to be specified, and progress reporting is supported in percentage. |
名称 | 说明 | |
---|---|---|
OnClientApplicationMessageReceive |
websocket的消息收到时触发 Triggered when a websocket message is received | |
OnClientConnected |
当客户端连接成功触发事件,就算是重新连接服务器后,也是会触发的 The event is triggered when the client is connected successfully, even after reconnecting to the server. | |
OnNetworkError |
当网络发生异常的时候触发的事件,用户应该在事件里进行重连服务器
|
名称 | 说明 | |
---|---|---|
CoreSocket |
对客户端而言是的通讯用的套接字,对服务器来说是用于侦听的套接字 (继承自 NetworkXBase。)A communication socket for the client, or a listening socket for the server | |
fileCacheSize |
文件传输的时候的缓存大小,直接影响传输的速度,值越大,传输速度越快,越占内存,默认为100K大小 (继承自 NetworkBase。)The size of the cache during file transfer directly affects the speed of the transfer. The larger the value, the faster the transfer speed and the more memory it takes. The default size is 100K. |
名称 | 说明 | |
---|---|---|
ToJsonString |
获取当前对象的JSON格式表示的字符串。 (由 HslExtension 定义。)Gets the string represented by the JSON format of the current object. |
private WebSocketClient webSocketClient; public void Start( ) { webSocketClient = new WebSocketClient( "127.0.0.1", 1883 ); webSocketClient.OnClientApplicationMessageReceive += WebSocketClient_OnClientApplicationMessageReceive; OperateResult connect = webSocketClient.ConnectServer( ); if (connect.IsSuccess) { Console.WriteLine( "connect successful" ); } else { // 连接失败。需要等会重新连接,需要注意的是,对同一个实例来说,OnClientApplicationMessageReceive不能重复绑定事件 // Connection failed. Need to wait for reconnection, it should be noted that, for the same instance, OnClientApplicationMessageReceive can not repeatedly bind events Console.WriteLine( "connect failed" ); } // 当连接成功后,网络发生了异常。客户端会自动重新连接的。 // When the connection was successful, an exception occurred on the network. The client will automatically reconnect. } private void WebSocketClient_OnClientApplicationMessageReceive( WebSocketMessage message ) { Console.WriteLine( message.ToString( ) ); }
public void button_Click(object sender, EventArgs e ) { webSocketClient.SendServer( "This is a message from hslcommunication" ); }
private WebSocketClient webSocketClient; public void Start( ) { webSocketClient = new WebSocketClient( "127.0.0.1", 1883 ); // 连接上服务器的时候触发,在断线重连的时候也会触发,如果使用发送服务器实现订阅的方式,在下面的事件里订阅是合理的 // Triggered when connected to the server, it will also trigger when disconnected and reconnected. // If the sending server is used to implement the subscription, the subscription is reasonable in the following events webSocketClient.OnClientConnected += ( ) => { // 订阅的内容添加在这里 // Subscribed content added here webSocketClient.SendServer( "A" ); }; webSocketClient.OnClientApplicationMessageReceive += WebSocketClient_OnClientApplicationMessageReceive; OperateResult connect = webSocketClient.ConnectServer( ); if (connect.IsSuccess) { Console.WriteLine( "connect successful" ); } else { // 连接失败。需要等会重新连接,需要注意的是,对同一个实例来说,OnClientApplicationMessageReceive不能重复绑定事件 // Connection failed. Need to wait for reconnection, it should be noted that, for the same instance, OnClientApplicationMessageReceive can not repeatedly bind events Console.WriteLine( "connect failed" ); } // 当连接成功后,网络发生了异常。客户端会自动重新连接的。 // When the connection was successful, an exception occurred on the network. The client will automatically reconnect. } private void WebSocketClient_OnClientApplicationMessageReceive( WebSocketMessage message ) { // 一般来说,一个客户端订阅一个topic,如果要订阅多个的话,message就要区分主题,需要采用json格式的数据 // Generally, a client subscribes to a topic. If you want to subscribe to multiple topics, // the message must distinguish between topics, and payload in json format is required. Console.WriteLine( message.ToString( ) ); }
private WebSocketClient webSocketClient; public void Start( ) { webSocketClient = new WebSocketClient( "127.0.0.1", 1883 ); // 连接上服务器的时候触发,在断线重连的时候也会触发,如果使用发送服务器实现订阅的方式,在下面的事件里订阅是合理的 // Triggered when connected to the server, it will also trigger when disconnected and reconnected. // If the sending server is used to implement the subscription, the subscription is reasonable in the following events webSocketClient.OnClientConnected += ( ) => { // 订阅的内容添加在这里 // Subscribed content added here webSocketClient.SendServer( "A" ); }; webSocketClient.OnNetworkError += ( object sender, EventArgs e ) => { // 当网络异常的时候触发,可以在此处重连服务器 if (sender is WebSocketClient client) { // 开始重连服务器,直到连接成功为止 client.LogNet?.WriteInfo( "网络异常,准备10秒后重新连接。" ); while (true) { // 每隔10秒重连 System.Threading.Thread.Sleep( 10_000 ); client.LogNet?.WriteInfo( "准备重新连接服务器..." ); OperateResult connectResult = client.ConnectServer( ); if (connectResult.IsSuccess) { client.LogNet?.WriteInfo( "连接服务器成功!" ); break; } client.LogNet?.WriteInfo( "连接失败,准备10秒后重新连接。" ); } } }; webSocketClient.OnClientApplicationMessageReceive += WebSocketClient_OnClientApplicationMessageReceive; OperateResult connect = webSocketClient.ConnectServer( ); if (connect.IsSuccess) { Console.WriteLine( "connect successful" ); } else { // 连接失败。需要等会重新连接,需要注意的是,对同一个实例来说,OnClientApplicationMessageReceive不能重复绑定事件 // Connection failed. Need to wait for reconnection, it should be noted that, for the same instance, OnClientApplicationMessageReceive can not repeatedly bind events Console.WriteLine( "connect failed" ); } // 当连接成功后,网络发生了异常。客户端会自动重新连接的。 // When the connection was successful, an exception occurred on the network. The client will automatically reconnect. } private void WebSocketClient_OnClientApplicationMessageReceive( WebSocketMessage message ) { // 一般来说,一个客户端订阅一个topic,如果要订阅多个的话,message就要区分主题,需要采用json格式的数据 // Generally, a client subscribes to a topic. If you want to subscribe to multiple topics, // the message must distinguish between topics, and payload in json format is required. Console.WriteLine( message.ToString( ) ); }