C++实现HttpPost请求.doc_第1页
C++实现HttpPost请求.doc_第2页
C++实现HttpPost请求.doc_第3页
C++实现HttpPost请求.doc_第4页
C++实现HttpPost请求.doc_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

C+实现Http Post请求参考资料:/share/detail/39003388/yc0188/article/details/4741871/thread-2094334-1-1.html/头文件#include #include #include using namespace std;/函数声明int request(char* hostname, char* api, char* parameters);/方法调用int _tmain(int argc, TCHAR* argv, TCHAR* envp) int nRetCode = 0; / initialize MFC and print and error on failure if (!AfxWinInit(:GetModuleHandle(NULL), NULL, :GetCommandLine(), 0) / TODO: change error code to suit your needs _tprintf(_T(Fatal Error: MFC initialization failedn); return 1; request(, /CheckUser.jsp, test); return nRetCode;/函数实现int request(char* hostname, char* api, char* parameters) WSADATA WsaData; WSAStartup(0x0101, &WsaData); /初始化socket struct hostent* host_addr = gethostbyname(hostname); if (host_addr = NULL) coutUnable to locate hosth_addr_list); int sock = socket(AF_INET, SOCK_STREAM, 0); if (sock = -1) return -100; /建立连接 if (connect(sock, (const struct sockaddr *)&sin, sizeof(sockaddr_in) ) = -1) coutconnect failedendl; return -101; /初始化发送信息 char send_str2048 = 0; /头信息 strcat(send_str, POST ); strcat(send_str, api); strcat(send_str, HTTP/1.1rn); strcat(send_str, Host: ); strcat(send_str, hostname); strcat(send_str, rn); strcat(send_str, Connection: keep-alivern); char content_header100; sprintf(content_header,Content-Length: %drn, strlen(parameters); strcat(send_str, content_header); strcat(send_str, Cache-Control: max-age=0rn); strcat(send_str, Origin: rn); strcat(send_str, User-Agent: Mozilla/5.0 (Windows NT 6.1) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/15.0.849.0 Safari/535.1rn); strcat(send_str, Content-Type: application/x-www-form-urlencodedrn); strcat(send_str, Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8rn); strcat(send_str, Referer: /rn); strcat(send_str, Accept-Encoding: gzip,deflate,sdchrn); strcat(send_str, Accept-Language: zh-CN,zh;q=0.8rn); /内容信息 strcat(send_str, rn); strcat(send_str, parameters); if (send(sock, send_str, strlen(send_str),0) = -1) coutsend failedendl; return -101; /获取返回信息 char recv_str4096 = 0; if (recv(sock,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论