首页 > 学院 > 开发设计 > 正文

HTTP协议,GET/POST学习心得

2019-11-08 02:18:27
字体:
来源:转载
供稿:网友
大家好,今天由作为实习生的我来分享我对HTTP协议中GET、POST的认识。通过学习,我了解到HTTP是一个客户端和服务器端请求和应答。客户端与服务器之间的交互用到了两种类型的消息:请求(Request)和响应(Response)。而HTTP的请求方法又分为以下几点:OPTIONS、HEAD 、GET 、POST 、PUT 、DELETE 、TRACE 、CONNECT 。今天我们重点交流GET和POST的作用。在GET中1.请求可被缓存请求保留在浏览器历史记录中2.请求可被收藏为书签3.请求不应在处理敏感数据时使用4.请求有长度限制5.请求只应当用于取回数据在POST中:1.请求不会被缓存2.请求不会保留在浏览器历史记录中3.不能被收藏为书签4.请求对数据长度没有要求5.当用户按后退或者刷新按钮时,数据会被重新提交二、  GET:  参数是通过Url来传输,接在Url后面中间用?分开,不同参数之间用&分开,下面表示传递两个参数param1和param2,值为value1和value2。例如:http://songurl/index.htm?param1=value1&param2=value2  POST:  html页面中使用form表单提交,接收方式,使用Request.Form[""]或Request.QueryString[""]来获取。    具体代码内容引用博主niuniu7107:get 方式通过在网络地址附加参数来完成数据的提交,比如在地址 http://www.google.com/webhp?hl=zh-CN 中,前面部分 http://www.google.com/webhp 表示数据提交的网址,后面部分 hl=zh-CN 表示附加的参数,其中 hl 表示一个键(key), zh-CN 表示这个键对应的值(value)。程序代码如下:1.            HttpWebRequest req = (HttpWebRequest) HttpWebRequest.Create( "http://www.google.com/webhp?hl=zh-CN" );  2.            req.Method = "GET";  3.            using (WebResponse wr = req.GetResponse())  4.            {  5.            //在这里对接收到的页面内容进行处理  6.            }  post方式通过在页面内容中填写参数的方法来完成数据的提交,参数的格式和 get 方式一样,是类似于 hl=zh-CN&newwindow=1 这样的结构。程序代码如下:
7.            string param = "hl=zh-CN&newwindow=1";  8.            byte[] bs = Encoding.ASCII.GetBytes(param);  9.            HttpWebRequest req = (HttpWebRequest)HttpWebRequest.Create( "http://www.google.com/intl/zh-CN/" );  10.        req.Method = "POST";  11.        req.ContentType = "application/x-www-form-urlencoded";  12.        req.ContentLength = bs.Length;  13.        using (Stream reqStream = req.GetRequestStream())  14.        {  15.        reqStream.Write(bs, 0, bs.Length);  16.        }  17.        using (WebResponse wr = req.GetResponse())  18.        {  19.        //在这里对接收到的页面内容进行处理  20.        }  
在安全性上,POST相当对于GET较为安全,但两者都均并不是真实的安全,如果要让敏感信息得到保障,最好还是对信息进行加密。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表