CodeWF.NetWeaver / 文档 / 远程文件浏览
远程文件浏览
说明:远程文件浏览、目录管理和文件传输能力从
CodeWF.NetWrapper拆分到CodeWF.NetWrapper.FileSystem。服务端和客户端需要通过UseFileSystem()挂接文件系统扩展后,下面流程才会由扩展包自动处理。
说明:远程文件浏览、目录管理和文件传输能力从
CodeWF.NetWrapper拆分到CodeWF.NetWrapper.FileSystem。服务端和客户端需要通过UseFileSystem()挂接文件系统扩展后,下面流程才会由扩展包自动处理。
TcpSocketClient.QueryFileAsync 浏览服务端目录,向服务端发送 QueryFileStart 请求,其中包含服务端目录路径TcpSocketServer 收到 QueryFileStart 后,判断本地目录是否存在FileTransferReject,错误码 -1,表示目录不存在QueryFileStartAck 分包发送子文件或目录信息FileTransferReject,错误码 -2,错误描述为异常信息FileTransferReject 后,通过 FileTransferProgress 事件通知浏览服务端目录失败,输出错误码及提示QueryFileStartAck 后,可执行模块中远程文件列表刷新等操作TcpSocketClient.CreateDirectoryAsync 创建目录,向服务端发送 CreateDirectoryStart 请求CreateDirectoryStart 后,判断本地目录是否存在CreateDirectoryStartAck,表示创建成功CreateDirectoryStartAckFileTransferReject,错误码 -11,错误描述为异常信息FileTransferReject 后,通过 FileTransferProgress 事件通知创建失败,输出错误码及提示CreateDirectoryStartAck 后,可执行模块中远程文件列表刷新等操作TcpSocketClient.DeleteAsync 删除文件或目录,向服务端发送 DeleteFileStart 请求DeleteFileStart 后,判断本地文件或目录是否存在FileTransferReject,错误码 -21,表示文件或目录不存在DeleteFileStartAckFileTransferReject,错误码 -22,错误描述为异常信息FileTransferReject 后,通过 FileTransferProgress 事件通知删除失败,输出错误码及提示DeleteFileStartAck 后,可执行界面远程文件刷新等操作TcpSocketClient.StartFileUploadAsync 上传文件,向服务端发送 FileUploadStart 请求,其中包含本地已有文件大小信息TcpSocketServer 收到 FileUploadStart 后,判断本地文件状态FileUploadStartAck 确认接收FileUploadStartAck 后,根据服务端已有文件大小偏移,分包发送文件数据 FileBlockData,等待服务端确认接收FileBlockData 后,执行文件写入操作(偏移量根据服务端已有文件大小),写入数据根据 FileBlockData 大小,接着响应客户端 FileBlockAck 确认块接收FileBlockAck 后,继续发送下一个 FileBlockData,并通过 FileTransferProgress 事件通知当前传输进度FileTransferReject,错误码 -31,表示服务端文件大于客户端已有文件FileTransferReject 后,通过 FileTransferProgress 事件通知上传失败,提示文件大小大于客户端已有文件,可选择删除服务端文件再上传FileTransferReject,错误码 -32,表示文件已存在,无需重复上传FileTransferReject,错误码 -33,表示文件大小相同但 Hash 不同,拒绝上传FileTransferReject 后,通过 FileTransferProgress 事件通知上传失败,输出对应错误码的提示信息,错误码 -32 提示文件已存在,无需重复上传,错误码 -33 提示文件大小相同但 Hash 不同,可选择删除服务端文件再上传TcpSocketClient.StartFileDownloadAsync 下载文件,向服务端发送 FileDownloadStart 请求,其中含有本地已有文件大小信息TcpSocketServer 收到 FileDownloadStart 后,判断本地文件状态FileTransferReject,错误码 -41,表示服务端文件不存在FileTransferReject 后,通过 FileTransferProgress 事件通知下载失败,提示服务端文件不存在FileTransferReject,错误码 -42,表示服务端文件小于客户端已有文件FileTransferReject 后,通过 FileTransferProgress 事件通知下载失败,提示服务端文件小于客户端文件FileTransferReject,错误码 -43,表示文件相同,不需要下载FileTransferReject,错误码 -44,表示文件大小相同但 Hash 不同FileTransferReject 后,通过 FileTransferProgress 事件通知下载失败,错误码 -43 提示文件相同不需要下载,错误码 -44 提示文件大小相同但 Hash 不同,可选择删除本地文件后再下载FileDownloadStartAck,准备分块发送文件FileBlockData,等待客户端确认接收FileBlockData 后,执行文件写入操作(偏移量根据客户端已有文件大小),写入数据根据 FileBlockData 大小,接着响应服务端 FileBlockAck 确认块接收,并通过 FileTransferProgress 事件通知当前传输进度FileBlockAck 后,继续发送下一个 FileBlockData