背景:java端基于webservice实现服务端,c作为客户端,通过gsoap传输图片给服务端。
实现步骤:
1、c端通过服务端wsdl文件生成客户端代码,图片接收部分的结构体如下:
struct xsd__base64Binary{
unsigned char *__ptr;
int __size;
char *id; /* optional element of type xsd:string */
char *type; /* optional element of type xsd:string */
char *options; /* optional element of type xsd:string */
};
2、读取图片数据,并赋值给次结构体
merchantLogoByte.__ptr = soap_malloc( &add_soap, size);
memcpy(merchantLogoByte.__ptr, data, size); //data 图片数据
merchantLogoByte.__size = size; //size图片大小
3、代码示例
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "AppWebServiceSoapBinding.nsmap"
#include "soapH.h"
#include "soapStub.