系统自动更新方案(2)上传:上传本地目录到服务器的过程
应用场景:每次程序修改完成并经过测试以后,就通过此方法快速方便地将最新的程序上传到服务器。
一、启动服务端 程序(接受文件上传请求):
命令:【D:\uploadServer>gin_comm_server -file d:/go.log -port 5005 -dir D:\uploadServer\uploadDir】
参数解释:
1)、-file d:/go.log:指定日志文件
2)、-port 5005:指定启动端口
3)、-dir D:\uploadServer\uploadDir:指定文件上传以后要保存的根目录(事先创建好),每个文件上传以后要指定的新的目录就是在这个根目录之下。
二、启动客户端程序(指定要上传的目录)
命令:【D:\upload>upload_dev -url "http://127.0.0.1:5005/upload?save_dir=new_dir&new_name=1" -dir D:/upload_src/app_data -skip xml,pdb】
命令解释:
1.请求上传服务:http://127.0.0.1:5005/upload
2.save_dir=new_dir:所上传的文件保存在《服务器文件目录\new_dir》下。
3.new_name=0:0表示上传的文件不改名,1表示由服务器自动改名(时间戳)
4.-dir D:/upload_src/app_data:指定本地要上传的目录
5.-skip xml,pdb:指定xml和pdb两类文件不上传
特别说明:如果源文件目录【upload_src/app_data】有子目录,则子目录及其下的文件也会一并上传,但是空目录不会上传。
执行以后的日志(部分):
D:\upload>upload_dev -url "http://127.0.0.1:5005/upload?save_dir=new_dir&new_name=0" -dir D:/upload_src/app_data -skip xml,pdb
upload_dev -url http://127.0.0.1:5005/upload?save_dir=new_dir&new_name=0 -dir D:/upload_src/app_data
2021/12/25 18:14:32 执行:【-url D:/upload_src/app_data -dir http://127.0.0.1:5005/upload?save_dir=new_dir&new_name=1】
2021/12/25 18:14:32 即将上传第【1】个(共【17】个)文件:【D:/upload_src/app_data/DotNetZip.dll】
2021/12/25 18:14:32 url:【http://127.0.0.1:5005/upload?save_dir=new_dir&new_name=1】
2021/12/25 18:14:32 status:200 OK,body:{"dir":"new_dir","message":"上传成功","name":"","path":"./uploadServer/uploadDir/new_dir","size":12288,"success":"1"}
2021/12/25 18:14:32 根据skip参数忽略文件:D:/upload_src/app_data/DotNetZip.pdb
2021/12/25 18:14:32 根据skip参数忽略文件:D:/upload_src/app_data/DotNetZip.xml
服务端日志(部分):
2021/12/25 18:14:32 开始文件上传...
2021/12/25 18:14:32 FormFile.begin...
2021/12/25 18:14:32 FormFile.end...
2021/12/25 18:14:32 文件处理...
[GIN] 2021/12/25 - 18:14:32 |[97;42m 200 [0m| 15.0008ms | 127.0.0.1 |[97;46m POST [0m "/upload?save_dir=new_dir&new_name=1"
2021/12/25 18:14:32 开始文件上传...
... ...
本文来自博客园,作者:xiaoyongdata(微信号:xiaoyongdata),转载请注明原文链接:https://www.cnblogs.com/xiaoyongdata/p/15731131.html