HTTP协议——认识篇

HTTP协议——认识篇

我们都知道在访问网页不存在时,常常会见到一个404的错误提示,这里的404就是一个HTTP的状态码,当然,HTTP的状态码不止一种,比较常见的有:

200 - 服务器成功返回网页

404 - 请求的网页不存在

503 - 服务器暂时不可用

具体的更详尽的我们可以去查看HTTP状态代码的W3C页了解详细信息。

既然有HTTP协议状态码,那HTTP协议又是什么呢?

HTTP是Hyper Text Transfer Protocol(超文本传输协议)的缩写。它的发展是万维网协会(World Wide Web Consortium)和Internet工作小组IETF(Internet Engineering Task Force)合作的结果,(他们)最终发布了一系列的RFC,RFC 1945定义了HTTP/1.0版本。其中最著名的就是RFC 2616。RFC 2616定义了今天普遍使用的一个版本——HTTP 1.1(1999年)。

HTTP协议(HyperText Transfer Protocol,超文本传输协议)是用于从WWW服务器传输超文本到本地浏览器的传送协议。它可以使浏览器更加高效,使网络传输减少。它不仅保证计算机正确快速地传输超文本文档,还确定传输文档中的哪一部分,以及哪部分内容首先显示(如文本先于图形)等。

HTTP是一个应用层协议,由请求和响应构成,是一个标准的客户端服务器模型。HTTP是一个无状态的协议(注:无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,为了支持客户端与服务器之间的交互,我们使用Cookie和Session技术解决)

HTTP的请求响应模型:

如上面的模型,HTTP的一次操作称为一个事务,其工作过程可分为四步:

1)首先客户机与服务器需要建立连接。只要单击某个超级链接,HTTP的工作开始。

2)建立连接后,客户机发送一个请求给服务器,请求方式的格式为:统一资源标识符(URL)、协议版本号,后边是MIME信息包括请求修饰符、客户机信息和可能的内容。

3)服务器接到请求后,给予相应的响应信息,其格式为一个状态行,包括信息的协议版本号、一个成功或错误的代码,后边是MIME信息包括服务器信息、实体信息和可能的内容。

注:(MIME是多用途互联网邮件扩展类型。是设定某种扩展名文件用一种应用程序来打开的方式类型,当该扩展名文件被访问的时候,浏览器会自动使用指定应用程序来打开。多用于指定一些客户端自定义文件名,以及一些媒体文件打开方式。)

4)客户端接收服务器所返回的信息通过浏览器显示在用户的显示屏上,然后客户机与服务器断开连接。

如果在以上过程中的某一步出现错误,那么产生错误的信息将返回到客户端,有显示屏输出。对于用户来说,这些过程是由HTTP自己完成的,用户只要用鼠标点击,等待信息显示就可以了。

时间: 2024-08-22 12:52:50

HTTP协议——认识篇的相关文章

HTTP协议——深入篇

HTTP协议——深入篇 我们知道HTTP是由请求和响应两部分组成当你在Web浏览器中输入一个URL时,浏览器将根据你的要求创建并发送请求,该请求包含所输入的URL以及一些与浏览器本身相关的信息.当服务器收到这个请求时将返回一个响应,该响应包括与该请求相关的信息以及位于指定URL(如果有的话)的数据.直到浏览器解析该响应并显示出网页(或其他资源)为止. HTTP请求 HTTP请求的格式如下所示: <request-line><注释--请求行--> <headers><

前端基础(http协议相关篇)

网络协议篇: 1.http请求过程 DNS解析--tcp三次握手--建立tcp连接后发起http请求--服务器响应http请求 --浏览器得到资源--浏览器渲染 2.http报文 通用首部:可以出现在请求报文,也可出现在响应报文 请求报文:请求行(包含请求方法和请求URL).请求头部(header).空行和请求数据4个部分组成 响应报文: 状态行(包含http版本.状态码.原因短语).消息报头.响应正文 3.请求方法 get:普通的请求服务器资源 head:只返回头部信息,用于在客户端为获取实际

http协议基础篇(转)

http协议学习系列 转自 http://www.jb51.net/article/28096.htm 1. 基础概念篇 1.1 介绍 HTTP是Hyper Text Transfer Protocol(超文本传输协议)的缩写.它的发展是万维网协会(World Wide Web Consortium)和Internet工作小组IETF(Internet Engineering Task Force)合作的结果,(他们)最终发布了一系列的RFC,RFC 1945定义了HTTP/1.0版本.其中最著

基于EasyDarwin的实现无人机远程视频传输--RTSP协议分析篇

申明该文章参考了http://blog.csdn.net/haolipengzhanshen/article/details/50802081 的文章,在这里标示感谢! 这篇文章主要从几个方面分析EasyDarwin的RTSP内容 RTSP协议概述 wireshark抓包实例分析 一次完整RTSP的交互流程 EasyDarwin项目代码中 RTSP的初始化 EasyDarwin项目代码中 RTSP请求的处理过程 如果你是只想实现视频流的传输,对转发服务器没有太大要求,建议只要研究EasyDarw

HTTP:每个web开发人员必须知道的协议-基础篇

http://blog.csdn.net/sql_wtx/article/details/8894447 原文是http://net.tutsplus.com/tutorials/tools-and-tips/http-the-protocol-every-web-developer-must-know-part-1/,翻译这面文章的目地是为了更加深刻的了解HTTP协议.现在web技术日新月异,只有对其协议了解清楚,才能更快.更稳固掌握这些新技术.由于文章很长,我会分成几篇博客来翻译,文章里面也

基于STM8的IIC协议--实例篇--时钟模块(DS3231)读取

1. 综述 由上篇博客可知道IIC协议如何用代码实现,本篇博客就不涉及协议内容,只讲解如何使用. 本次的实验传感为:DS3231(时钟模块),对于时钟模块的具体信息我也就不多介绍大家可以自行度娘,具体功能无非就是在单片机中起到一个获取时间的作用.然后该模块是可以由IIC协议去驱动的,再加上所要的操作也是比较简单,适合部分刚接触IIC协议而找不但传感练手的一个模块. 2. 明确任务顺序 个人习惯,在每驱动一个新传感的时候,我会将我要完成的传感分为几个任务点.接下来我就展示以下我在写DS3231模块

HTTP协议请求篇

http协议的基本概念 超文本传输协议(HTTP,HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议.是工作在tcp/ip协议基础上的,所有的WWW文件都必须遵守这个标准.设计HTTP最初的目的是为了提供一种发布和接收HTML页面的方法 说明 (1) http协议是叫 超文本传输协议 (2) http协议用于传输文本和图片(等文件) (3) 在建立tcp/ip协议基础之上的 如何抓取http包(请求包,响应包) 这里以火狐浏览器为例 看一个测试题 一共发

MQTT 协议 - 部署篇

MQTT - Server 搭建 MQTT - Server 支持winLinux等系统的安装,下文基于linux进行说明. 1.下载安装包 在官网上下载apache-apollo-1.7.1-unix-distro.tar.gz,上传并解压到指定目录下. 解压后如下图所示. 2.创建实例 进入到bin目录中,执行:./apollo  create mybroker,创建成功后如下图. 实例默认创建到bin目录下,如下图 3.修改对外Ip 进入到如上截图中的etc目录中,修改apollo.xml

HTTP协议响应篇

http响应的基本介绍 一个HTTP响应代表服务器向客户端回送的数据, 由三个部分构成 状态行[200 , 302 304, 403, 404, 500] 响应消息头 返回的实体内容 http响应状态行详解 说明,我们要求大家必须掌握的状态码有5个 (1) 200 成功 (2) 302 重定向,  返回的页面告诉浏览器到另外一个url取资源 (3) 304 资源未修改, 服务器说明浏览器本地的资源已经是最新的. (4) 403 禁止访问, 即告诉浏览器,你没有权限访问该资源 (5) 404 没有