硬件配套软件由c++开发,现在c++需要通过3G模块把数据发送到PHP,数据包括普通字符串和图片文件。
我不知道为啥c++给我发过来的数据数组只有一对键值,值就是所有的数据用英文逗号分割组合成的一个字符串……
刚开始我无所谓,我自己拆分字符串成数组进行处理都可以正确进行。
可是图片是文件没法拼接到字符串。
c++就把图片转成2进制字符串,还是用同样的方法和其他数据拼接成一个字符串发给我,让我再把二进制字符串转成图片,但是这时候我就啥东西都收不到……
我不了解c++,现在开发没法再进行了……请问下这种做法对吗?是哪边的问题?正确的应该怎么做?感激不尽
大家讲道理2017-05-24 11:33:02
提问的方式有问题,跟跨域没关系。
我提供两种方案
1、c++ 调用 php 的文件上传接口,类似 form 表单上传文件
2、图片采用 base64 编码,c++ 把编码后的字符串传给你,你也可以解析
3、你说你没收到内容,这个要先确认,是c++ 没法成功,还是你没接受到,
能不能通过 2进制字符串还原成图片是一个问题,没接收到 2进制字符串是另一个问题
高洛峰2017-05-24 11:33:02
不是浏览器,不存在跨域问题吧.
你这个要看具体请求协议如:HTTP
啥的,php接收图片也是用二进制啊Content-Type:multipart/form-data;