C++實現FTP斷點上傳和下載思路

一、從客戶端上傳文件給服務器

    1、客戶端發送 “STOR+文件名” 命令給服務器

    2、客戶端將文件數據 fread() 和 send() 給服務端

    3、服務端用 recv() 接收數據後 fwrite() 至本地文件

    4、網絡斷開,關閉 socket

    5、客戶端重新連接至服務端並正常登陸

    6、客戶端發送 “APPE+文件名” 命令給服務器

        (1)、客戶端發送 “SIZE+文件名” 命令給服務器

        (2)、服務器返回文件大小

    7、客戶端根據文件大小,從斷點處發送數據給服務器

    8、服務端接收數據並追加到文件末尾


二、從服務器下載文件到客戶端

    1、客戶端發送 “RETR+文件名” 命令給服務器

    2、服務器將文件數據發送給客戶端

    3、客戶端接收後寫至本地文件

    4、網絡斷開,關閉 socket

    5、客戶端重新連接至服務端並正常登陸

    6、客戶端發送 “REST+文件長度” 命令給服務器

    7、客戶端發送 “RETR+文件名” 命令給服務器

    7、服務器根據文件大小,從斷點處發送數據給客戶端

    8、客戶端接收數據並追加到文件末尾

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章