Qt调用PHP写的接口,向其传递图片文件,并保存在服务器。

二进制文件无法直接传递,Qt采用Base64进行编码发送,PHP解码保存为文件。

注意:PHP收到数据之后会将POST过来的数据中的加号(+)替换为空格,造成接收到的数据不全,无法正常还原的问题,这里采用在PHP解码之前先将所有空格替换为+号的方法。

 Qt文件:

    //Qt文件QFile file("1.jpg");if(!file.open (QIODevice::ReadOnly)){qDebug()<<"file open failed.";return;}QByteArray data=file.readAll ();file.close ();QNetworkRequest req(QUrl("http://localhost:88/index.php"));networkMgr->post (req,"fileData="+data.toBase64 ()+"");

PHP文件:

<?php
$recContent=$_POST['fileData'];
$data=base64_decode(str_replace(" ","+",($recContent)));
file_put_contents("1.jpg", $data);
?>

 

转载于:https://www.cnblogs.com/rophie/p/4113471.html

c++ Qt向PHP接口POST文件流相关推荐

  1. Feign接口获取文件流问题

    文件下载 @GetMapping(value = "/v1/files/**/{file_name:.+}")public void downFile(@PathVariable( ...

  2. 2021-09-07-OSB学习(接口下载文件--流)

    OSB学习(接口下载文件[流的形式]) 什么是使用流文件传输 1.我们要干什么 2.接口开发 2.1.控制台通过执行PL显示流文件信息 2.1.1.创建基本的目录结构 2.1.2.打开项目,然后创建B ...

  3. axios 请求接口获取文件流数据导出数据到excel,解决乱码

    axios.get("URL",{params:{data1:data1,data2:data2},headers: { 'Content-Type': 'application/ ...

  4. java读本地文件并通过接口返回文件流

    this.historicalSchemePath//本地存储的地址比如c:/ @GetMapping(value = "/getsCheme") public void gets ...

  5. ant 接口返回文件流,前端自动下载实现

    封装网络请求 : reqAxios.js import Axios from 'axios'; import qs from 'qs'; import { router } from 'umi'; i ...

  6. .NET中的IO操作之文件流

    读操作 //1.创建文件流 FileStream fsRead =new FileStream("1.txt",FileMode.Open); //2.创建缓冲区,正常情况下,是不 ...

  7. 通过文件流解压压缩包

    最近在做文件解压遇到个问题,记录下解决过程. 文件来源是通过接口获取文件流,然后通过文件流解压文件. 此时需要将文件流写入文件然后对文件进行操作, 遇到的问题是怎么创建合格File对象,搜索了很长时间 ...

  8. 【java基础,IO合集】文件流、高级流(缓冲流、对象流)、 序列化接口java.io.Serrializable

    目录 文件流 1 块读写的文件复制操作 2 文件输出流-覆盖模式 3 文件输出流-追加模式 4 文件输出流-读取文本数据 高级流 1  流连接示意图 2 缓冲流 2.1 使用缓冲流完成文件复制操作 2 ...

  9. 浏览器预览PDF文件(接口返回的是文件流形式)

    最终结果可以直接看文章末尾,前面都是日记一样的内容啊哈哈,是自己解决问题的坎坷的过程...[手动滑稽害怕脸]...... 今天解决了一个看起来很小但是却困扰了我近乎一天的问题 需求描述: 通过下载文件 ...

最新文章

  1. 外网访问arm嵌入式linux_嵌入式Linux系统编程——文件读写访问、属性、描述符、API
  2. CUDA是Nvidia开发的一种并行计算平台和编程模型,用于在其自己的GPU(图形处理单元)上进行常规计算
  3. B站上线斯坦福最新「机器学习系统(MLSys)」全集,小伙伴有福了!
  4. HTTPDNS成为移动互联网的标配–原因与原理解析(转)
  5. hadoop1.2.1伪分布模式安装教程
  6. 如何在firefox下获取下列框选中option的text
  7. .net mysql limit 分页原理_浅谈MySQL分页Limit的性能问题
  8. android横向铺满屏幕,解决安卓自定义Dialog不能水平铺满屏幕
  9. 网络唤醒无需任何软件,实现局域网广域网远程唤醒计算机
  10. 干货!技术分享:如何写好一篇论文
  11. 【SSD目标检测】2:如何制作自己的数据集
  12. C Primer Plus 第十章学习总结……2015.4.30
  13. 利用python爬取教务系统中成绩
  14. 会计报表分析相关指标收集
  15. 利用Python实现视频号自动赚钱一条龙
  16. EEROM和FRAM写入速度比较
  17. java gmail smtp_使用Javamail连接到Gmail smtp服务器会忽略指定的端口,并尝试使用25...
  18. 【王喆-推荐系统】(task3)深度学习基础和TensorFlow入门(基础架构篇)
  19. 20230210组会论文总结
  20. linq使用Take和Skip实现分页

热门文章

  1. 一文吃透JAVA定时器格式
  2. 2022-2028年中国基因工程药物产业市场研究及前瞻分析报告
  3. java 捕获异常并存入数据库_java异常处理,报异常的话怎么处理对象值,并持久化到数据库中...
  4. 2022-2028年中国氮肥行业投资分析及前景预测报告
  5. 软件工程——视频总结
  6. 【Design pattern】设计模式思路总结(二)
  7. LeetCode简单题之同构字符串
  8. 2021年大数据HBase(三):HBase数据模型!!!【建议收藏】
  9. [JavaScript] JavaScript 运算符与流程控制
  10. 服务器创建和附加虚拟磁盘,Windows 7 虚拟硬盘中的新增功能