C++通过HTTP请求Get方式请求Json数据-创新互联
http://111.3.10.10:9123/yanfabu/getLckData1.php?type=update_wgjy_yfb&data={%22f_lckh%22:%222212052500%22,%22f_qty%22:36,%22f_hgqty%22:36,%22f_jyqty%22:3}
成都创新互联主营谢家集网站建设的网络公司,主营网站建设方案,手机APP定制开发,谢家集h5小程序开发搭建,谢家集网站营销推广欢迎谢家集等地区企业咨询void CCM3600App::SendResERP(CString csResult)
{char Data[1024];
WSADATA wData;
::WSAStartup(MAKEWORD(2, 2), &wData);
wchar_t* msg;
DWORD dwNum;
SOCKET Client_Sock = socket(AF_INET, 1, 0);
struct sockaddr_in sin = {0 };
int Ret = 0;
int AddrLen = 0;
HANDLE hThread = 0;
WideCharToMultiByte(CP_ACP, 0, csResult, -1, Data, 1024, NULL, NULL);
//拼接请求信息 //POST
char send_str[2048] = {NULL };
strcat(send_str, "GET ");
strcat(send_str, "/yanfabu/getLckData1.php?");
//strcat(send_str, "type=update_wgjy_yfb&data={%22f_lckh%22:%222212052500%22,%22f_qty%22:36,%22f_hgqty%22:36,%22f_jyqty%22:3}");
strcat(send_str, "type=update_wgjy_yfb&data=");
strcat(send_str, Data);
strcat(send_str, " HTTP/1.1\r\n");
strcat(send_str, "Connection:Keep-Alive\r\n");
//strcat(send_str, "Content-Type:application/json\r\n");
strcat(send_str, "Content-Type:text/html;charset=utf-8\r\n");
strcat(send_str, "Accept-Encoding:gzip, deflate\r\n");
strcat(send_str, "Accept-Language:zh-CN,en,*\r\n");
strcat(send_str, "host:");
//strcat(send_str, "192.168.1.100");
strcat(send_str, "111.3.10.10");
strcat(send_str, "\r\n");
strcat(send_str, "User-Agent:Mozilla/5.0\r\n\r\n");
char addIp[256] = {0 };
//theApp.GetIpByDomainName("192.168.1.100", addIp);
theApp.GetIpByDomainName("111.3.10.10", addIp);
sin.sin_addr.s_addr = inet_addr(addIp);
sin.sin_port = htons(9123);;
sin.sin_family = AF_INET;
char bufRecv[3069] = {0 };
int errNo = 0;
errNo = connect(Client_Sock, (sockaddr*)&sin, sizeof(sin));
char cs_str[1024] = {NULL };
char recv_str[8192] = {NULL };
if (errNo == 0)
{//如果发送成功,则返回发送成功的字节数;
if (send(Client_Sock, send_str, strlen(send_str), 0) >0)
{ m_SendOKorNO = 1;
}
else
{ m_SendOKorNO = 0;
}
//如果接受成功,则返回接受的字节数;
if (recv(Client_Sock, cs_str, 3069, 0) >0)
{}
}
else
{errNo = WSAGetLastError();
}
//接收正常拼接字符串
strcat(recv_str, cs_str);
memset(cs_str, 0, sizeof(cs_str));
//只获取 报头信息后面的 返回值
char* re_msg = strstr(recv_str, "\r\n\r\n");
//转换字符串
dwNum = MultiByteToWideChar(CP_UTF8, 0, re_msg, -1, NULL, 0);
msg = new wchar_t[dwNum];
MultiByteToWideChar(CP_UTF8, 0, re_msg, -1, msg, dwNum);
//char*和CString的转换
msg[dwNum] = '\0';
CString str;
str.Append(msg);
g_csErpRecData = str;
//关闭socket
closesocket(Client_Sock);
WSACleanup();
//返回接收到的响应字符串
return;
}
你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧
分享标题:C++通过HTTP请求Get方式请求Json数据-创新互联
文章起源:http://pwwzsj.com/article/hosos.html