Day08 - 作业

2017-04-11  本文已影响0人  乘风逐月

一、作业:高级FTP

高级FTP服务器开发:

  1. 用户加密认证
  2. 多用户同时登陆
  3. 每个用户有自己的家目录且只能访问自己的家目录
  4. 对用户进行磁盘配额、不同用户配额可不同
  5. 用户可以登陆server后,可切换目录
  6. 查看当前目录下文件
  7. 上传下载文件,保证文件一致性
  8. 传输过程中现实进度条
  9. 支持断点续传

二、简单思路

  1. 用户加密认证
    md5加密
  2. 多用户同时登陆
    socketserver多线程
  3. 每个用户有自己的家目录且只能访问自己的家目录
    判断要访问的目录地址是否要离开家目录
  4. 对用户进行磁盘配额、不同用户配额可不同
    单独用户单独文件单独字典,磁盘配额写入该字典中,每次传文件前判断剩余空间是否足够存放文件
  5. 用户可以登陆server后,可切换目录
    在用户家目录下切换
  6. 查看当前目录下文件
    os.listdir,用isfile, isdir来判断并改变显示颜色
  7. 上传下载文件,保证文件一致性
    课程中的md5验证
  8. 传输过程中现实进度条
    *已收取的文件大小 / 文件总大小
  9. 支持断点续传
    暂停后再启动时,判断已收取大小,告诉服务端去seek到该地址

三、流程图

Day08 - 高级FTP

四、参考站点

python之FTP程序(支持多用户在线)

五、代码

上一篇 下一篇

猜你喜欢

热点阅读