关于基于qt的http上传文件-QHttpPart和QNetworkRequest中setHeader的区别
一. 知识点:setHeader的区别
二. 详解 :如下图,在文件上传中,QHttpPart的setHeader是设置form-data中的数据的。
需要注意的是:QHttpPart的name表示参数名,filename表示参数值,而参数值对应的数据用setBodyDevice或setBody来对应,故QHttpPart在多个文件上传时需要多个。
name和filename是成对出现的,type指定二进制方式上传。
QHttpPart 是QHttpMutilPart的数据类型,可以有多个,用append方法添加上。
如:有一个文件就有一个QHttpPart。
三. 运用 :
以下代码对应以下截图:
QString requestFormat = QString::fromLocal8Bit("form-data;name=file;filename=943xxxx.jpg;type=application/octet-stream"); QHttpPart mImagePart; mImagePart.setHeader(QNetworkRequest::ContentDispositionHeader, QVariant(requestFormat)); mImagePart.setBodyDevice(&mFile); multiPart->append(mImagePart);//QHttpMutli multiPart //发送 QNetworkReply* _mReply = nam.post(*request_turnSave, multiPart);
......
我是截图
本文来自博客园,作者:Labant,转载请注明原文链接:https://www.cnblogs.com/lvshen/p/17336033.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具