Day 46 文件上传下载

本文详细介绍文件上传下载流程,包括文件的MD5校验确保数据一致性,服务器异常处理及客户端业务逻辑实现。涵盖文件信息交换、存储、业务处理及MD5校验全过程。

文件上传下载

上传

  1. 客户端发送文件的详细信息(文件名称,大小,md5,一个key用于表示请求类型)
  2. 先接受文件信息
  3. 判断如果是上传则开始接受文件
  4. 接收到文件后存储到临时地址
  5. 将请求数据与文件地址提交给业务逻辑
  6. 将业务逻辑返回的数据发送给客户端

下载

  1. 客户端发送请求,包含(文件名称,下载标识)
  2. 服务器接收到响应后,不知道文件路径,需要将请求提交给业务逻辑层
  3. 业务逻辑层根据文件名获取文件的路径
  4. 将文件路径返回给服务器
  5. 服务器判断业务逻辑的返回值,如果需要下载文件
  6. 发送文件信息
  7. 接收文件信息
  8. 发送文件数据
  9. 客户端接收文件数据
  10. 客户端对比md5值确定知否下载成功

文件的MD5 校验

主要用于保证文件的一致性,比如文件下载过程中,可能丢失数据,导致数据错误无法正确识别

  1. 发送方先校验原始文件得到一个md5值
  2. 接收方接收后也用相同的算法计算一个md5值
  3. 判断两端的md5值是否相同,相同则表示传输正确

服务器异常处理

实现客户端的业务逻辑

实现步骤

  1. 设计表
  2. 在modles中创建类,继承基类modle
  3. 在客户端提供一个功能,主要是接收用户输入的数据
  4. 发送请求给服务器 client中的send_request 接收请求 recv_response
  5. 服务器创建对应的接口函数幂函数需要注册到mapping中
  6. 当请求到达后悔调用对应的接口函数
  7. 取出请求数据request,进行逻辑判断
  8. 进行数据存储,如User类的save保存get_object获取数据
  9. 给客户端返回响应结果,必须是字典类型

注意:

客户端与服务器的字段名称必须对应

请求数据中必须包含func

转载于:https://www.cnblogs.com/masterjian924/p/11264767.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值