HTTP请求与响应报文详解

如图所示,这是客户端往服务器发送请求时的报文:
一般来说,将报文分成三个部分,请求行、请求头、请求体

如图,请求行包括三部分内容
1、请求方法,在HTTP里的请求方法种类较多,但就移动端开发来说,常用的方法是GET\POST\HEAD这三种请求方法
2、URI,统一资源标识符,也可以用URL代替,也就是请求的资源路径
3、HTTP协议版本

如图,请求头包含的内容:
一般来说,请求头里面包含着客户端此次请求的具体信息:
比如说,客户端接受服务器返回的文件的类型,Content-Type
客户端此次接受服务器返回文件的长度,Content-Length
客户端想要的返回文件的具体范围,Range
客户端的语言环境等,都是包含在请求头里面的。知道这些信息,我们就可以加以利用,来达到想要的效果。
请求体
一般是POST请求才有请求体的,主要是上传文件时用到,一般是放需要传给客户端的具体文件。
在HTTP协议中,客户端请求服务器,那么只要服务器接受到客户端的请求,便会响应客户端所发请求
响应,也分为三个部分:响应行、响应头,响应体,如下图:

其中,响应行包括:

1、服务器HTTP协议版本
2、状态码(其中2XX信息的,表示处理成功; 4XX信息的,表示客户端的错误; 5XX信息的,表示服务器内部出错,也就是不关我们客户端啥事......)
3、原因短语,表示成功、失败原因啥之类的
响应头:

也就是服务器返回给客户端,服务器的具体信息
此次响应的时间、此次响应返回的文件长度、文件类型等等
响应体:
服务器返回给客户端的文件、数据等
HTTP请求与响应报文详解的更多相关文章
- Http 请求头 响应体 详解
Referrer Policy 是什么? 我们知道,在页面引入图片.JS 等资源,或者从一个页面跳到另一个页面,都会产生新的 HTTP 请求, 浏览器一般都会给这些请求头加上表示来源的 Referre ...
- javaweb(四)——Http协议(请求头,响应头详解)
一.什么是HTTP协议 HTTP是hypertext transfer protocol(超文本传输协议)的简写,它是TCP/IP协议的一个应用层协议,用于定义WEB浏览器与WEB服务器之间交换数据的 ...
- HTTP权威指南读书笔记(一)HTTP概述、URL和资源及报文详解
一.HTTP概述 1.WEB客户端和服务器. 2.资源:资源可以是各种格式的静态文件,也可以是应用程序. 3.媒体类型 4.URI:统一资源标识符 URL:统一资源定位符. URL的第一部分称为方案: ...
- http协议之报文详解
一. 概述 用于HTTP协议交互的信息被称为HTTP报文.请求端(客户端)的http报文叫做请求报文,响应端的叫做响应报文. 报文,是网络中交换和传输的数据单元,即站点一次性要发送的数据块.报文包含了 ...
- HTTP/1.1报文详解
本文为<三万长文50+趣图带你领悟web编程的内功心法>第三个章节. 3.HTTP/1.1报文详解 在RFC2616中心详细的描述了HTTP/1.1[1]的报文,感兴趣的朋友也可以前往阅读 ...
- jmeter --响应断言详解
jmeter --响应断言详解 响应断言 :对服务器的响应进行断言校验 (1)应用范围: main sample and sub sample, main sample only , sub-samp ...
- Python网络请求urllib和urllib3详解
Python网络请求urllib和urllib3详解 urllib是Python中请求url连接的官方标准库,在Python2中主要为urllib和urllib2,在Python3中整合成了urlli ...
- Jmeter接口之响应断言详解
响应断言 : 对服务器的响应进行断言校验 Apply to 应用范围: main sample and sub sample, main sample only , sub-sample only , ...
- 减少HTTP请求之合并图片详解(大型网站优化技术)
原文:减少HTTP请求之合并图片详解(大型网站优化技术) 一.相关知识讲解 看过雅虎的前端优化35条建议,都知道优化前端是有多么重要.页面的加载速度直接影响到用户的体验.80%的终端用户响应时间都花在 ...
随机推荐
- Ubuntu菜鸟入门(十一)—— windows 和 ubuntu时间冲突解决
一.问题原由 Ubuntu和Windows默认的时间管理方式不同,所以双系统发生时间错乱是正常的 Ubuntu默认时间是把BIOS时间当成GMT+0时间,也就是世界标准时,而我国在东八区(GMT+8) ...
- mac 终端添加颜色
1.打开终端,然后找到终端偏好设置,选择自己喜欢的颜色 2.然后切换到当前用户的家目录: cd ~ 3.打开文件,开始编辑".bash_profile", 添加下面两句 expor ...
- php 执行命令函数
/** Method to execute a command in the terminal Uses : 1. system 2. passthru 3. exec 4. shell_exec * ...
- 【MyBatis】解析MyBatis传入参数的问题
一.单个参数: public List<XXBean> getXXBeanList(String xxCode); <select id="getXXXBeanList&q ...
- win7 32位 安装opencv-python后,运行时提示 "from .cv2 import *: DLL load failed: 找不到指定的模块" 的解决办法
安装opencv后,运行一个测试程序提示"from .cv2 import *: DLL load failed: 找不到指定的模块".于是百度一下解决办法,结果试了N多方法后也没 ...
- 压缩跟踪(CT)代码具体学习_模块1(样本的採集和扩充)
本章主要具体解释的是compressive tracking框架中的第一部分:样本的採集和扩充部分. 在開始代码学习的前面,你须要知道的理论知识參见论文:Real-time Compressive T ...
- FreeSWITCH在会议室中持续播放音频文件
最近遇到一个客户需求,希望在会议室建立起来后,自动播放一段指定的声音. 已知会议室命令,假设建立起一个会议室号码3000,很容易实现以下功能: 一.播放一个声音文件一次 conference 3000 ...
- Linux版迅雷(Xware)安装配置方法
Linux版迅雷下载请见:Xware下载 解压下载的压缩包 核对MD5或SHA1校验值 解压得到以下三个文件 安装文件 在/usr/local/下创建thunder文件夹,将上面的三个文件放入,然后运 ...
- Hive实现从表中随机抽样得到一个不重复的数据样本
select a.* from ( select a.*,rand(12345) as random from tripdata a ) a where random between 0 and 0. ...
- [转]What are mode and status columns under gp_segment_configuration table
February 16, 2017 10:39 Goal In this article we will try to understand and answer to the below two q ...