HTTP
HTTP是一个简单的请求-响应协议,它通常运行在TCP之上。它指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应。
超文本传输协议(HTTP)的设计目的是保证客户端与服务器之间的通信。HTTP 的工作方式是客户端与服务器之间的请求-应答协议。web 浏览器可能是客户端,而计算机上的网络应用程序也可能作为服务器端。
*举例:客户端(浏览器)向服务器提交 HTTP 请求;服务器向客户端返回响应。响应包含关于请求的状态信息以及可能被请求的内容。
HTTP工作原理
HTTP请求方法
POST - 向指定的资源提交要被处理的数据
- POST 请求不会被缓存
- POST 请求不会保留在浏览器历史记录中
- POST 不能被收藏为书签
- POST 请求对数据长度没有要求
举例:如果数据是以post提交,那么表单中的数据全部都放在请求报文的请求体中
格式:
txtName=itcast&txtPwd=123
在服务端文件接收的是
string userName = context.Request.Form["txtName"];
string userPwd = context.Request.Form["txtPwd"];
GET - 从指定的资源请求数据
- GET 请求可被缓存
- GET 请求保留在浏览器历史记录中
- GET 请求可被收藏为书签
- GET 请求不应在处理敏感数据时使用
- GET 请求有长度限制
- GET 请求只应当用于取回数据
举例:如果表单是以GET方式将数据发送到服务端,那么会将用户在表单中输入的数据放在浏览器的地址栏中发送到服务端。
格式:
http://localhost:2454/RequestMethod/AddInfo.ashx?txtName=itcast&txtPwd=123
以表单元素name属性的值=用户输入的值 & 以表单元素name属性的值=用户输入的值。
在AddInfo.ashx文件中怎样接收数据?
在服务端接收数据
string userName=context.Request.QueryString["txtName"];//接收的是表单元素name属性的值
string userPwd=context.Request.QueryString["txtPwd"];
如何使用?
- 一般情况用POST
(1)POST提交比GET提交要安全。
(2)POST发送的数据要比GET大。(文件)
- 搜索的时候用GET
除了将表单中的method改成get或post,是否还有其他的方式,表示get请求或post请求?
(1)在浏览器地址中直接输入地址,敲回车,也是向服务器发送GET请求。
(2)单击超链接也是GET请求。
(3)post只有将表单中的method改成post这一种请求。