HiveNetWebUtils.utils.socket module¶
socket连接的工具类
- class HiveNetWebUtils.utils.socket.SocketTool[源代码]¶
基类:
objectsocket连接的工具类
- classmethod connect(connect_config={}) CResult[源代码]¶
连接Socket服务器端并返回连接对象
- 参数
connect_config (dict) –
连接参数
ip {str} - 主机名或IP地址, 默认为’127.0.0.1’
port {int} - 监听端口, 默认为8080
recv_timeout {float} - 数据接收的超时时间, 单位为秒, 默认为10.0
send_timeout {float} - 数据发送的超时时间, 单位为秒, 默认为10.0
- 返回
连接结果:
result.code: ‘00000’-成功, 其他值为失败
result.net_info: 连接后的网络信息对象
net_info.csocket - socket对象
net_info.laddr 本地地址,地址对象(“IP地址”,打开端口)
net_info.raddr 远端地址,地址对象(“IP地址”,打开端口)
net_info.send_timeout 发送超时时间, 单位为秒
net_info.recv_timeout 收取超时时间, 单位为秒
- 返回类型
- classmethod recv_data(net_info, recv_para={})[源代码]¶
从指定的网络连接中读取数据
- 参数
net_info (NullObj) –
网络连接信息对象
net_info.csocket - socket对象
net_info.laddr 本地地址,地址对象(“IP地址”,打开端口)
net_info.raddr 远端地址,地址对象(“IP地址”,打开端口)
net_info.send_timeout 发送超时时间, 单位为秒
net_info.recv_timeout 收取超时时间, 单位为秒
recv_para (dict) –
读取数据的参数, 包括:
recv_len {int} - 要获取的数据长度, 必要参数
overtime {float} - 获取超时时间, 单位为秒, 非必要参数
- 返回
数据获取结果:
result.code: ‘00000’-成功, ‘20403’-获取数据超时, 其他为获取失败
result.data: 获取到的数据对象(具体类型和定义, 由实现类自定义)
result.recv_time : datetime 实际开始接受数据时间
result.overtime : float 超时时间(秒), 当返回结果为超时, 可获取超时时间信息
- 返回类型
- classmethod send_data(net_info, data: bytes, send_para={})[源代码]¶
向指定的网络连接发送数据
- 参数
net_info (NullObj) –
网络连接信息对象
net_info.csocket - socket对象
net_info.laddr 本地地址,地址对象(“IP地址”,打开端口)
net_info.raddr 远端地址,地址对象(“IP地址”,打开端口)
net_info.send_timeout 发送超时时间, 单位为秒
net_info.recv_timeout 收取超时时间, 单位为秒
data (bytes) – 要写入的数据对象
send_para (dict) –
写入数据的参数:
overtime {float} - 发送超时时间, 单位为秒, 非必须参数
- 返回
发送结果:
result.code: ‘00000’-成功, ‘20404’-写入数据超时, 其他为写入失败
result.send_time : datetime 实际发送完成时间
result.overtime : float 超时时间(秒), 当返回结果为超时, 可获取超时时间信息
- 返回类型