Http请求头和响应头(Get和Post)

HTTP简介

HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网服务器传输超文本到本地浏览器的传送协议。

HTTP工作原理

HTTP是无连接:限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。(节省传输时间)
HTTP是媒体独立的:只要客户端和服务器知道如何处理的数据内容,任何类型的数据都可以通过HTTP发送。客户端以及服务器指定使用适合的MIME-type内容类型。
HTTP是无状态:HTTP协议是无状态协议。是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前边的信息,则它必须重传,这样可能导致每次连接传送的数据量增大,另一方面,在服务器不需要先前信息时它的应答能力就较快。

HTTP消息结构

一个HTTP请求报文由请求行、请求头、空行和请求数据4个部分组成。
1、请求行
请求行由请求方法字段、URL字段和HTTP协议版本字段三个字段组成,中间使用空格分隔。例如GET /index.html HTTP/1.1。
根据HTTP标准,HTTP请求可以使用多种请求方法。
HTTP1.0定义了三种请求方法:GET,POST和HEAD方法。
HTTP1.1新增了五种请求方法:OPTIONS, PUT, DELETE, TRACE 和 CONNECT 方法。
在这里插入图片描述
1)、GET
最常见的一种请求方式,当客户端要从服务器中读取文档时,当点击网页上的连接或者通过浏览器的地址栏输入网址来浏览器的,使用的都是GET方式。GET方法要求服务器将URL定位的资源放在相应报文的数据部分,回送给客户端。使用GET方法时,请求参数和对应的值附加在URL后面,利用一个问号代表URL的结尾与请求参数的开始,传递参数长度受限制。例如,/index.jsp?id=100&op=bind,这样通过GET方式传递的数据直接表示在地址中,所以我们可以把请求结果以链接的形式发送给好友。
GET方式的请求一般不包含“请求内容”部分,请求数据以地址的形式表现在请求行。
地址中“?”之后的部分就是通过GET发送的请求数据,我们可以在地址栏中看到各个数据之间用&符号隔开。显然这种方式不适合传送私密数据。另外由于不同的浏览器对地址的字符限制也有所不同,一般最多只能识别1024个字符,所以如果需要传送大量数据的时候也不适合用GET方式。
2)、POST
以上不适合用GET的情况,可以使用POST方式,因为使用POST方式可以允许客户端给服务器提供更多的信息。POST方法将请求参数封装在HTTP请求数据中,以名称/值的形式出现,可以传输大量数据,这样POST方式对传送的数据大小没有限制,而且也不会显示在URL中。
POST方法请求行中不包含数据字符串,这些数据保存在“请求内容”部分,各数据之间也是使用&隔开。POST方式大多用于页面的表单中。
3)、HEAD
HEAD就像GET,只不过服务端接收到HEAD请求后只返回响应头,而不会发送响应内容。当我们只需要查看某个页面的状态的时候,使用HEAD是非常高效的,因为在传输的过程中省去了页面内容。

仅用于自己学习,原文链接:https://www.cnblogs.com/lauhp/p/8979393.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值