HTTP是一个属于应用层面的面向对象的协议,由于其便捷、快速的方式、适用于分布式超媒体信息系统。于1990年提出

HTTP 协议主要特点概括如下

1.支持客户/服务器模式。

2.简单快速

请求方法常用的有  get 、post

3.灵活HTTP允许传输任意类型的数据对象。正在传输的类型由content-type加以标记。

4.无连接模式  请求一次立即断开连接节省传输时间

5.HTTP协议是无状态协议   缺少后续需要处理前面的信息 就必须重新传值  若果不需要处理前面的信息他的应答速度就较快

HTTP 协议详解之URL篇

http是创文本传输协议 是一个基于请求与响应模式的、无状态的、应用层的协议,常基于TCP的连接方式。

http://host[“:”port ][abs_path]

http表示要通过HTTP协议来定位网络资源;host表示合法的Internet主机域名或者IP地址;port指定一个端口号,为空则使用缺省值80;

Abs_path指定请求资源的URL;如果URL中没有给出abs_path,必须以’/’的形式给出,通常这个工作浏览器自动帮我们完成。

HTTP协议详解请求篇

http请求由三部分组成,分别是:请求行、消息包头、请求正文

1、请求行以一个方法符号开头,以空格分开,后面跟着请求的URL和协议的版本,格式如下:Method Request-URL HTTP-Version CRLF

其中Method表示请求方法;

Request-URL是一个统一资源标识符

HTTP-Version表示请求的HTTP协议版本

CRLF标示回车换行

请求方法&解释如下

Get          请求获取Request-URL所标识的资源

POST        在Request-URL所标识的资源后附加新的数据

HEAD       请求获取由Request-URL所标识的资源的响应消息报头

PUT         请求服务器存储一个资源,并用Request-URL作为其标识

DELETE      请求服务器删除Request-URL所标识的资源

TRACE       请求服务器回送收到的请求信息,主要用于测试或诊断

CONNECT    保留将来使用

OPTIONS    请求查询服务器性能,或者查询与资源相关的选项和要求

HTTP协议详解之响应篇

HTTP响应由三个部分组成,分别是状态航、消息报头、响应正文

1、HTTP状态码文本叙述

1XX:指示信息--表示请求已接收,继续处理

2XX:成功--表示请求已被成功接收、理解、接受

3XX:重定向--要完成请求必须进行更进一步的操作

4XX:客户端错误--请求有语法错误或请求无法实现

5XX:服务器端错误--服务器未能实现合法的请求

常见的状态码

200  OK               // 客户端请求成功

400  Bad Request      //客户端请求语法有错误,不能被服务器所理解接受

401  Unauthorized     //请求未经授权,这个状态码必须和www-Authenticate报头域一起使用

403  Forbidden        //服务器收到请求,但是拒绝提供服务

404  Not Found       //请求的资源不存在

500  Internal Server Error     //服务器发生意外错误

503  Server Unavailable      //服务器当前不能处理客户端请求  稍后恢复正常

HTTP消息头详解的更多相关文章

  1. JMS学习(二)- JMS Message Model 组成介绍及消息头详解

    一.前言 从本文起依次详细介绍JMS中的一些重要的概念,主要参考了官方的JMS1.1的文档,该文档很老了,是02年的,那年,JAVA还没有被Oracle收购..本文主要介绍Message及其相关概念, ...

  2. ip头、tcp头、udp头详解及定义,结合Wireshark抓包看实际情况

    公司的同事们在分析网页加载慢的问题,忽然使用到了Wireshark工具,我就像发现新大陆一样好奇,赶紧看了看,顺便复习了一下相关协议.上学时学的忘的差不多了,汗颜啊! 报文封装整体结构 mac帧头定义 ...

  3. HTTP请求头和响应头详解【转】

    最近老猿在开始学习爬虫相关的知识,由于老猿以前只做非web的后台应用,发现相关知识太过匮乏,导致学习很困难,为此不得不从一些基础知识恶补开始,对于这些知识,老猿会将网上找到的比较认可的内容直接转发. ...

  4. JAVA对象头详解(含32位虚拟机与64位虚拟机)

    为什么要学习Java对象头 学习Java对象头主要是为了解synchronized底层原理,synchronized锁升级过程,Java并发编程等. JAVA对象头 由于Java面向对象的思想,在JV ...

  5. Android开发——Android的消息机制详解

    )子线程默认是没有Looper的,Handler创建前,必须手动创建,否则会报错.通过Looper.prepare()即可为当前线程创建一个Looper,并通过Looper.loop()来开启消息循环 ...

  6. JMS学习(三)JMS 消息结构之属性及消息体详解

    一.前言 通过上一篇的学习我们知道了消息分为三个部分,即消息头,属性及消息体,并对消息头的十个属性进行了详细的介绍,本文再对消息属性及消息体进行详细的介绍. 二.属性介绍 消息属性的主要作用是可以对头 ...

  7. 流媒体学习三-------SIP消息结构详解

    SIP消息由三部分组成,即:开始行(start line).消息头(header).正文(body)Start-line:请求行Request-line  消息为 request消息时使用reques ...

  8. javaweb(四)——Http协议(请求头,响应头详解)

    一.什么是HTTP协议 HTTP是hypertext transfer protocol(超文本传输协议)的简写,它是TCP/IP协议的一个应用层协议,用于定义WEB浏览器与WEB服务器之间交换数据的 ...

  9. HTTP头详解

    HTTP 头部解释 1. Accept:告诉WEB服务器自己接受什么介质类型,*/* 表示任何类型,type/* 表示该类型下的所有子类型,type/sub-type. 2. Accept-Chars ...

随机推荐

  1. SQL Server 中同时操作的例子:

    在SQL 中同一逻辑阶段的操作是同时发生的. 先有一个例子做为带入: declare @x as int =1;declare @y as int =2;set @x=@y;set @y=@x;sel ...

  2. :last-child的诡异的问题!!

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  3. Developing your first FNC custom control

    Friday, May 13, 2016 Some weeks ago, we released the TMS FNC UI Pack, a set of Framework Neutral Com ...

  4. C++中类成员函数作为回调函数

    注:与tr1::function对象结合使用,能获得更好的效果,详情见http://blog.csdn.net/this_capslock/article/details/38564719 回调函数是 ...

  5. cocos2dx 字体

    有些时候需要在界面上显示些文字,自然涉及到字体的问题 显示文字使用CCLabelTTF即可,创建方法是 CCLabelTTF(const char* text, const char* font, i ...

  6. HDU 5054 Alice and Bob

    #include <cstdio> int main(){ int n,m,x,y; while(~scanf("%d%d%d%d",&n,&m,&am ...

  7. 基于视觉的Web页面分页算法VIPS的实现源代码下载

    基于视觉的Web页面分页算法VIPS的实现源代码下载 - tingya的专栏 - 博客频道 - CSDN.NET 基于视觉的Web页面分页算法VIPS的实现源代码下载 分类: 技术杂烩 2006-04 ...

  8. 让你提前知道软件开发(24):C语言和主要特征的发展史

    文章1部分 再了解C语言 C语言的发展历史和主要特点 作为一门众所周知的计算机编程语言,C语言是谁发明的呢?它是怎样演进的?它有何特点?究竟有多少人在使用它? 1. C语言之父 C语言是1972年由美 ...

  9. Shell 脚本小试牛刀(番外) -- 捷报

    捷报 捷报 捷报 捷报 捷报 捷报来袭,本系列的脚本已在Github 上开了版块, 我命名为" easy shell "(点此进入). 眼下已加入前面几期中的脚本,日后还会有很多其 ...

  10. 视频媒体播放,最好的 HTML 解决方法

    最好的 HTML 解决方法 HTML 5 + <object> + <embed> <video width="320" height="2 ...