【无标题】qt post图片方法

Qt使用QHttpMultiPart发送文件的方法 - 码农教程

 QNetworkRequest request;
    //request初始化
    //发送multi part内容时,不能设置下面一句,否则服务端无法解析边界
    //request.setHeader(QNetworkRequest::ContentTypeHeader, "multipart/form-data");

    QFile* file = new QFile(path);
    file->open(QIODevice::ReadOnly);
    QHttpMultiPart *multi_part = new QHttpMultiPart(QHttpMultiPart::FormDataType);
    QHttpPart image_part;
    image_part.setHeader(QNetworkRequest::ContentTypeHeader, QVariant("image/jpg"));
    image_part.setHeader(QNetworkRequest::ContentDispositionHeader
        , QVariant(QString("form-data; name=\"file\";filename=\"testfile.jpg\";"));
    image_part.setBodyDevice(file);
    multi_part->append(image_part);

    QNetworkReply *reply = manager_.post(request, multi_part);

在这里面需要注意的是,一方面是request不需要设置ContentTypeHeader,另一方面是在QHttpPart的ContentTypeHeader中,要设置对应的图像格式,如果是png,则按照以下方式设置

image_part.setHeader(QNetworkRequest::ContentTypeHeader, QVariant("image/png"));
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值