看看人家写的。

int sock; struct sockaddr_in sin; struct hostent *he=gethostbyname(Server); if(!he) { return HTTP_UNKNOW_HOST; } sin.sin_family=he->;h_addrtype; sin.sin_port = htons(m_port); sin.sin_addr.s_addr=((unsigned long*)(he->;h_addr_list[0]))[0]; if((sock=socket(AF_INET,SOCK_STREAM,0))<0) { return HTTP_SOCKET_ERROR; } if(connect(sock,(struct sockaddr*)&sin,sizeof(sin))<0) { close(sock); return HTTP_CONNECT_ERROR; }     char str[4096]; sprintf(str,"GET %s HTTP/1.0\r\nHost:%s\r\nUser-Agent:Mozilla/4.0\r\n\r\n",query,(LPCSTR)m_host); if(write(sock,str,strlen(str))<0) { close(sock); return HTTP_WRITE_ERROR; } fd_set rfds; struct timeval tv; FD_ZERO(&rfds); FD_SET(sock,&rfds); tv.tv_sec=m_nSecs; tv.tv_usec=0; if(!select(sock+1,&rfds,NULL,NULL,&tv)) { close(sock); return HTTP_SELECT_ERROR; }     if(FD_ISSET(sock,&rfds)) { int    len=1024*4; int i=0; int rv=0; char* buf=(char*)malloc((len+1)*sizeof(char)); while((rv=read(sock,buf,len))) { buf[rv] = 0 ; m_content += buf ; } close(sock); free(buf) ; if(!m_content.IsEmpty()) { if( m_content.Find("200")>;=m_content.Find("\n") ) { return HTTP_UNKNOWN_ERROR; } if(m_pBody=(char*)m_content.Find("\r\n\r\n")) { *m_pBody='\0'; m_pBody+=4; } else if(m_pBody=(char*)m_content.Find("\n\n")) { *m_pBody='\0'; m_pBody+=2 ; } else { return HTTP_BAD_HEADER; } return 0 ; } return HTTP_READ_ERROR ; } close(sock); return HTTP_UNKNOWN_ERROR;

c语言中post协议,c/c++的http协议的get和post方法相关推荐

  1. c语言中f5的作用,3G的AKA协议中F1至F5的UE端的实现(附代码C语言)

    摘  要 随着移动通信系统的不断发展,第三代移动通信系统(3G)成为当前通信领域研究开发的热点.在3G系统中,许多新型的数据业务将开放.在业务增多的同时,系统安全问题将变得更加重要. AKA协议就是3 ...

  2. C语言中strand() rand() time()函数的简单介绍及获取随机数的方法

    rand()函数简介 功 能 :伪随机数发生器 所属库:stdlib.h 用 法 :需要先调用srand初始化,一般用当前日历时间初始化随机数种子,这样每行代码都可以产生不同的随机数. 函数原型:in ...

  3. python语言中with as的用法使用详解

    本篇文章主要介绍了python语言中with as的用法使用详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考.一起跟随小编过来看看吧 With语句是什么? 有一些任务,可能事先需要设置,事后做 ...

  4. c语言 recv_sin,C++_C语言中经socket接收数据的相关函数详解,recv()函数: 头文件:#incl - phpStudy...

    C语言中经socket接收数据的相关函数详解 recv()函数:头文件: #include #include 定义函数: int recv(int s, void *buf, int len, uns ...

  5. php seekdir,C++_详解C语言中telldir()函数和seekdir()函数的用法,C语言telldir()函数:取得目录流 - phpStudy...

    详解C语言中telldir()函数和seekdir()函数的用法 C语言telldir()函数:取得目录流的读取位置头文件: #include 定义函数: off_t telldir(DIR *dir ...

  6. java语言中类定义数组赋值_在Java语言中,下列对于字符数组的定义并赋值正确的是(选一项)_学小易找答案...

    [单选题]<茶花女--饮酒歌>这段音乐属于级进还是跳进的旋律? <茶花女-饮酒歌>.mp4 [简答题] [单选题]对外汉语教学中以系统讲授语言知识的一类课型,包括语音.词汇.语 ...

  7. java中10》》2_(10*(2-8)+10)/(5-5*2)在JAVA语言中,上面的表达式计算结果为(选一项)_学小易找答案...

    [单选题]下列哪项不是药物的基本属性?( ) [单选题]已知 1 只共阴极 LED 显示器,其中 a 笔段为字形代码的最低位,若需显示数字 1 ,它的字形代码应为 ( ) (1.0分) [单选题]由于 ...

  8. c语言中getenv的作用,C语言putenv()函数和getenv()函数的使用详解

    C语言putenv()函数和getenv()函数的使用详解 C语言putenv()函数:改变或增加环境变量头文件: #include4 定义函数: int putenv(const char * st ...

  9. c语言自动生成系统时间函数,使用C语言中的time函数获取系统时间

    使用C语言中的time函数获取系统时间 可以通过time()函数来获得计算机系统当前的日历时间(Calendar Time),处理日期时间的函数都是以本函数的返回值为基础进行运算.其原型为: time ...

  10. c语言eof不起作用,c语言中EOF的用法

    c语言中EOF的用法以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! c语言中EOF的用法 1.EOF是end of fi ...

最新文章

  1. React Native —— App
  2. python界面设计实例-Python GUI项目实战(二)主窗体的界面设计与实现
  3. .net面试题大全,绝大部分面试题(有答案)
  4. 动态系统开发方法DSDM
  5. VTK:Utilities之AnimationScene
  6. 高德地图 android 调用 amap.clear()后定位蓝点消失 如何重新显示定位
  7. python合并两个属性_合并两个部分包含文件列表及其属性的最有效方法
  8. c语言程序设计实验指导实验报告,C语言程序设计实验指导及报告.doc
  9. 中国电子学会c语言考试题库,计算机基础考试试题及答案
  10. 研发项目wbs分解简单案例_工程项目管理之WBS分解实例(五篇模版)
  11. 反距离加权插值IDW计算详细步骤
  12. nero platinum刻录光盘简要教程(文章末尾有教程链接)
  13. 核磁共振设备工作过程人体温度监控中应用的光纤温度传感器
  14. ElasticSearch实战系列二: ElasticSearch的DSL语句使用教程---图文详解
  15. (深度学习快速入门)人工智能、机器学习和深度学习总体概述
  16. [译]eBay Elasticsearch性能调优实践
  17. Totem协议(SRP/RRP)讲解PPT
  18. 字符串相乘(给定两个以字符串形式表示的非负整数 num1 和 num2,返回 num1 和 num2 的乘积,它们的乘积也表示为字符串形式。)
  19. 19-图片标签注意点
  20. Docker 大势已去,Podman 即将崛起

热门文章

  1. android编程fragment,详解Android中Fragment的两种创建方式
  2. python情感分析预测模型_python snownlp情感分析简易demo
  3. js 获取中括号里面字符串_一日一技:一次性把字符串用多个分隔符分割
  4. iphone相册怎么加密_苹果手机怎么加密相册?苹果手机照片加密的方法介绍
  5. Redis详解(六)------ RDB 持久化
  6. VC++ HIDAPI实现USB数据读写
  7. VC限制只能输入常规数字的CEdit控件
  8. [C#]自定义鼠标样式
  9. WinXP系统下安装SQL SERVER 2000
  10. Flutter AnimatedAlign 使用解析