c/c++ 模拟http 协议,GET/POST 数据方法

GET 方式:

?sck->write("GET /weidian/kfxt.php?msg=abcdef\r\n\r\n");

或:

http_get_msg("abcdef")  

void http::http_get_msg(char *page)
{

memset(get_msg_buf,0,1000);

strcat(get_msg_buf,"GET ");
strcat(get_msg_buf,page);
strcat(get_msg_buf," HTTP/1.1\r\n");
strcat(get_msg_buf,"Host: www.baidu.com\r\n\r\n");

sck->write(get_msg_buf,strlen(get_msg_buf));
}

?POST 方式:

post_msg("/post.php","msg=gg");

void post_msg(char*page,char*data)

{

charbuf[1000];

memset(buf,0,1000);

sprintf(buf,"POST");

sprintf(buf+strlen(buf),page);

sprintf(buf+strlen(buf),"HTTP/1.0\r\n");

sprintf(buf+strlen(buf),"Content-Type:application/x-www-form-urlencoded\r\n");

sprintf(buf+strlen(buf),"Accept:*/*\r\n");

sprintf(buf+strlen(buf),"Content-Length:");

sprintf(buf+strlen(buf),"%d",strlen(data));

sprintf(buf+strlen(buf),"\r\n\r\n");

sprintf(buf+strlen(buf),data);

sck->write(buf,strlen(buf));

}

时间: 2024-10-20 17:23:19

c/c++ 模拟http 协议,GET/POST 数据方法的相关文章

用IO模拟串口协议发送数据

<pre name="code" class="cpp">//文件usend.h #ifndef _USEND_H_ #define _USEND_H_ //====红外接收相关定义============================= #define PuTx_High (P_uTx = 1) //数据高 #define PuTx_Low (P_uTx = 0) //数据低 #define V_SendDatNum 6//6 //发送数据字节数 /

模拟Modbus协议问题

问题: 在嵌入式系统开发中,Modbus协议是工业控制系统中广泛应用的一种协议.本题用来简单模拟Modbus协议,只需根据条件生成符合该协议的数据帧,并解析所获取的数据.假设设备使用的协议发送数据格式如下:<SlaveAddress, 1 Byte> <Function, 1 Byte> <Start Address, 2 Bytes> <NumberofBytes, 2 Bytes> <Checksum, 2 Bytes>其中前四项将在输入条件

模拟SPI协议时序

SPI是串行外设接口总线,摩托罗拉公司开发的一种全双工,同步通信总线,有四线制和三线制. 在单片机系统应用中,单片机常常是被用来当做主机(MASTER),外围器件被当做从机(SLAVE). 所以,在以下的介绍中,都是默认单片机是主机模式进行说明的. SPI总线相对于IIC总线,无总裁机制,无应答机制. SPI常用的四线制分别是,MISO(主入从出).MOSI(主出从入).SCK(同步时钟线).CS(片选线,也有是NSS). 主从机之间典型的接线方式如下所示: 按照时钟线的时钟极性(CPOL)和相

androidclient和站点数据交互的实现(基于Http协议获取数据方法)

androidclient一般不直接訪问站点数据库,而是像浏览器一样发送get或者post请求.然后站点返回client能理解的数据格式,client解析这些数据.显示在界面上.经常使用的数据格式是xml和json. 能够理解client事实上是一个你自定义标记语言的浏览器,一般浏览器能解析的是html+css的数据,而androidclient能解析的是xml和json(或者都不是而是你自定义的火星格式),服务端为了能满足client输出这样的数据格式的需求,不得不专门针对client开发不同

android客户端和网站数据交互的实现(基于Http协议获取数据方法)

android客户端一般不直接访问网站数据库,而是像浏览器一样发送get或者post请求,然后网站返回客户端能理解的数据格式,客户端解析这些数据,显示在界面上,常用的数据格式是xml和json. 可以理解客户端其实是一个你自己定义标记语言的浏览器,一般浏览器能解析的是html+css的数据,而android客户端能解析的是xml和json(或者都不是而是你自己定义的火星格式),服务端为了能满足客户端输出这种数据格式的需求,不得不专门针对客户端开发不同于浏览器访问的接口. 开发一个网站的客户端你需

Java模拟新浪微博登陆抓取数据

前言:  兄弟们来了来了,最近有人在问如何模拟新浪微博登陆抓取数据,我听后默默地抽了一口老烟,暗暗的对自己说,老汉是时候该你出场了,所以今天有时间就整理整理,浅谈一二. 首先:  要想登陆新浪微博需要预登陆,即是将账号base64加密,密码rsa加密以及请求http://login.sina.com.cn/sso/prelogin.php链接获取一些登陆需要参数,返回的接送字符串如: {"retcode":0,"servertime":1487292003,&quo

ASP模拟POST请求异步提交数据的方法

这篇文章主要介绍了ASP模拟POST请求异步提交数据的方法,本文使用MSXML2.SERVERXMLHTTP.3.0实现POST请求,需要的朋友可以参考下 有时需要获取远程网站的某些信息,而服务器又限制了GET方式,只能通过POST数据提交,这个时候我们可以通过asp来实现模拟提交post数据,网上有挺多这样的例子的.下面的是我自己写的比较简洁易懂的函数. 首先,需要一个编码设置的函数,因为asp一般为gbk的,而标准的网站现在大都使用utf-8的.所以需要转换. 代码如下: function

HTML5第8次课堂笔记( 模拟form表单提交数据,xml的解析,jQuery的Ajax方法使用, mui的ajax)

HTML5第8次课堂笔记 1.  模拟form表单提交数据:(get方式) <body> <formmethod="get"action="DataTest7"> <inputtype="text"name="uname"value="yang"id="myname"><br/> <inputtype="password&q

使用mockjs模拟后端返回的json数据;

前后端分离开发中最重要的一部就是前后端联调,很多时候后端进度是跟不上前端的,所以需要前端模拟一些数据进行调试,这样前端的进度就可以加快了.后端的小哥哥别打我: 使用mockjs可以很方便的模拟出想要的数据,只要后端字段给好,就可以模拟出数据,等到后端的数据接口真真好的时候可以直接将接口换掉: 使用方法: 一:安装json-server   (ps:本人理解这是模拟一个后端服务器,到时候会开一个虚拟服务器出来) npm install json-server –g    二:在项目中安装mockj

初级模拟电路:3-8 BJT数据规格书(直流部分)

回到目录 本小节我们以2N4123通用型BJT硅基晶体管为例,来介绍如何阅读BJT的数据规格书,点此链接可以阅读和下载2N4123的数据规格书. 1. 总体性能 打开datasheet后,首先看标题: 图3-8.01 可以看到,这是2N4123.2N4124共用的一个datasheet,而且是通用型NPN硅基三极管.然后在在第一页的右侧,厂家给出了管脚识别方法和管体上的文字标记含义: 图3-8.02 在第一页的主体篇幅,数据规格书列出了这个BJT晶体管的所有极限性能,好让使用者先对这个器件有一个