C 发送http request
来源:互联网 发布:手机硬件信息软件 编辑:程序博客网 时间:2024/05/17 07:48
//remember free responsechar* sendTcpRequest(char* request, int port, char* addr) {if(request == NULL)return EMPTY_STR;WSADATA wsa;if(WSAStartup(MAKEWORD(2,2), &wsa) != 0) {return EMPTY_STR;}int sclient = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);if(sclient == INVALID_SOCKET) {printf("invalid socket !");return EMPTY_STR;}struct sockaddr_in serAddr;serAddr.sin_family = AF_INET;serAddr.sin_port = htons(port);serAddr.sin_addr.S_un.S_addr = inet_addr(addr);int slen = sizeof(serAddr);if (connect(sclient, (struct sockaddr *)&serAddr, sizeof(serAddr)) == SOCKET_ERROR) {printf("connect error !");closesocket(sclient);return EMPTY_STR;}char recData[RECV_BUFLEN];int ret = 0;int i = 0;while(i < REQ_COUNT) {send(sclient, request, strlen(request), 0);ret = recv(sclient, recData, RECV_BUFLEN, 0);if(ret <= 0) {i ++;continue;}recData[ret] = 0x00;printf("=========================== Response ==========================\n");puts(recData);if(strstr(recData, "200 OK") != NULL) {//receive more info from bridgememset(recData,'\0', RECV_BUFLEN);ret = recv(sclient, recData, RECV_BUFLEN, 0);if(ret > 0) {printf("=========================== Response ==========================\n");puts(recData);}break;}}closesocket(sclient);WSACleanup();if(i >= REQ_COUNT) {printf("after %d times request, server still don't respond!\n", REQ_COUNT);return EMPTY_STR;} else {char* response = (char*) malloc(sizeof(char) * strlen(recData));strcpy(response, recData);return response;}}
0 0
- C 发送http request
- Composer创建和发送HTTP Request
- nodejs http.request 发送请求demo
- nodejs使用request发送http请求
- C发送http请求
- C发送http请求
- c socket 发送http请求
- linux C发送 http 请求
- linux C发送 http 请求
- C socket 发送HTTP请求
- iOS使用NSURLConnection发送同步和异步HTTP Request
- Fiddler (三) Composer创建和发送HTTP Request
- Fiddler (三) Composer创建和发送HTTP Request
- Fiddler (三) Composer创建和发送HTTP Request
- Fiddler (三) Composer创建和发送HTTP Request
- Fiddler (三) Composer创建和发送HTTP Request
- Fiddler (三) Composer创建和发送HTTP Request
- Fiddler (三) Composer创建和发送HTTP Request
- Leetcode Game of Life
- Codeforces Round #327 (Div. 2)D. Chip 'n Dale Rescue Rangers
- C split 截取特定字符串功能实现
- JavaEE中分层解耦合与事物控制-方案
- Python Requsets库
- C 发送http request
- ios入门攻略 04篇 C语言基础【分支结构之if语句】
- Merkle-Hellman背包密码算法
- 2015 南阳理工CCPC Ancient Go
- device eth0 does not seem to be present, delaying initialization
- 自定义servlet
- [leetcode]Add Two Numbers
- qt5和opencv3在linux上安装配置
- 二级路由器设置图解教程