上一篇已经实现了http服务器,通过浏览器可以访问html页面。
这一篇开始通过浏览器和服务器进行通信,主要用post请求。
post请求格式如下
POST /index.html HTTP/1.1
Accept: text/html, application/xhtml+xml, image/jxr, */*
Referer: http://192.168.0.105/index.html
Accept-Language: zh-CN
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0) like Gecko
Content-Type: application/x-www-form-urlencoded
Accept-Encoding: gzip, deflate
Host: 192.168.0.105
Content-Length: 12
Connection: Keep-Alive
Cache-Control: no-cache
username=hes
要想服务器处理post请求的数据,还得解析这个数据包,可以发现最后一行有我们想要的数据,
其实我们就是发送了一个hes数据给服务器。
可以看到整个数据包里面只有一个‘=’号,我们只需要截取=号后面的数据,就是我们想要的数据了
如果数据有很多个,要以此类推。
---------------------------------------------------------------------------------------------------------------------------------
上面知道post数据格式,下面要知道如何用浏览器发送post请求。
浏览器发送post请求可以通过form表单提交。
input 标签有很多种类型,可以去看看使用需要的类型
基本只要理解这两块就可以实现浏览器发送数据给http服务器了
下面是演示结果:
浏览器登录:http://192.168.0.105/index.html
显示效果,这个页面其实就是保存在数组里面的,不是文件。因为不支持中文,也没找原因,先用英文试一下。
服务器响应
服务器可以解析到对应的数据,那个你的硬件设备就可以做出相应的处理啦。
服务器写的不是很完善,因为是属于demo实验用的,写的比较简单,花的时间也比较少,
一天时间去研究post相关的知识,和编写服务器处理代码。
源码:https://download..net/download/hes_c/10691752