HTTP:  通信双方如果想要通信就必须遵循一定的规则,我们把这个规则称之为HTTP协议!

报文:  HTTP协议通信的内容我们称之为:报文

  报文格式:    报文首部

        空行

        报文主体

      1.请求报文

        请求首部:请求首行和请求头部

        空行

        请求主体

      2.响应报文:

        响应首部

        空行

        响应主体

报文分类:  请求报文:浏览器发送给服务器端的内容

      get请求    GET /Hello/index.jsp HTTP/1.1

            Accept: */*    Accept-Language: zh-CN

            User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; .NET4.0E)

            Accept-Encoding: gzip,deflate

            Host: localhost:8080

            Connection: Keep-Alive

            Cookie: JSESSIONID=C55836CDA892D9124C03CF8FE8311B15

            请求首行:请求方式 请求资源【url】 请求协议/版本号   

            请求头部:*/*表示客户端可以接受的文档类型,*/*表示的是可以接受任意类型

          Accept-Language:表示的是当前浏览器所在的地区,zh-CN表示是客户端用的语言简体中文,en-US表示的是美式英语!

            Accept-Encoding:浏览器向服务器发送请求的时候,会告诉服务器端浏览器可以接受的压缩格式!

            refer:表示的是当前网页是从哪个网页跳转过来!    host:是目标主机的ip地址和端口号!    Connection:表示的是浏览器和服务器的通信连接:Keep-Alive表示会话保持!默认会话连接时间是3000ms!    Cookie:是位于浏览器端的,和服务器通信使用!        get请求没有空行和请求体!

     

        post请求    POST /Hello/target.html HTTP/1.1

               Accept: application/x-ms-application, image/jpeg, application/xaml+xml, image/gif, image/pjpeg, application/x-ms-xbap, */*

            Referer: http://localhost:8080/Hello/

  `           Accept-Language: zh-CN

           User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; .NET4.0E)

             Content-Type: application/x-www-form-urlencoded

           Accept-Encoding: gzip, deflate    Host: localhost:8080    Content-Length: 14    Connection: Keep-Alive    Cache-Control: no-cache    Cookie: JSESSIONID=774DA38C1B78AE288610D77621590345            username=admin

            请求首部:   请求首行:请求方式 请求URL 请求协议/协议版本号 POST /Hello/target.html HTTP/1.1   请求头部;    

            空行

           请求体:请求的内容

get请求和post请求的区别:   1.get请求是通过url传递参数,post请求是通过请求体传递参数的

                2.get请求最多允许传递255个字符,对长度有限制,所以数据比较大的时候我们使用post请求,尤其是做上传的时候用post请求!

             3.get请求我们在浏览器上是可以看到请求参数的,而post请求在浏览器地址栏中是看不到请求参数的!

    响应报文:服务器发送给浏览器端的内容    响应报文是由响应首部[响应首行和响应头部]、空行、响应体

          HTTP/1.1 200 OK

          Server: Apache-Coyote/1.1

          Content-Type: text/html;charset=UTF-8

          Content-Length: 274

          Date: Tue, 07 Apr 2015 10:08:26 GMT

            <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" >

           <html>

           <head>

           <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<title>Insert title here</title>

           </head>

           <body>

             <h1>Hello</h1>

           </body>

           </html>

        响应首行:通信协议/版本号  响应状态码

        响应头部:

               服务器:apache

               响应体编码类型:Content-Type

          响应体长度:Content-Length

          响应时间:Date

        空行

        响应体!

响应状态码:  200:表示的是响应成功

        302:表示的是重定向

        404:请求的url错误!

        500:服务器端的错误!

http协议介绍及get与post请求、响应状态码的更多相关文章

  1. HTTP请求 响应状态码

      1.请求响应方式       get是从服务器上获取数据,post是向服务器传送数据.get 数据在地址栏中明文的形式发送, post则不是,传递的数据比get多 据RFC2616标准(现行的HT ...

  2. TCP/IP协议族(一) HTTP简介、请求方法与响应状态码

    接下来想系统的回顾一下TCP/IP协议族的相关东西,当然这些东西大部分是在大学的时候学过的,但是那句话,基础的东西还是要不时的回顾回顾的.接下来的几篇博客都是关于TCP/IP协议族的,本篇博客就先简单 ...

  3. 《HTTP协议详解》读书笔记---请求篇之响应状态码

    在接收和解释请求消息后,服务器返回一个http响应消息.它也分为3个部分:状态行.消息报头.响应正文,格式如下: HTTP-VersionStatus-CodeReason-PhraseCRLF(CR ...

  4. HTTP协议---HTTP请求中的常用请求字段和HTTP的响应状态码及响应头

    http://blog.csdn.net/qxs965266509/article/details/8082810 用于HTTP请求中的常用请求头字段 Accept:用于高速服务器,客户机支持的数据类 ...

  5. 02-HTTP的请求方法以及响应状态码

    1.   HTTP的请求方法以及响应状态码 1.1. 请求方法 http请求方法有GET.POST.PUT.HEAD.DELETE.OPTIONS.TRACE.CONNECT.当然上述方法是基于HTT ...

  6. iOS开发——网络篇——HTTP/NSURLConnection(请求、响应)、http响应状态码大全

    一.网络基础 1.基本概念> 为什么要学习网络编程在移动互联网时代,移动应用的特征有几乎所有应用都需要用到网络,比如QQ.微博.网易新闻.优酷.百度地图只有通过网络跟外界进行数据交互.数据更新, ...

  7. 9. http协议_响应状态码_页面渲染流程_路由_中间件

    1. http协议 超文本传输协议 协议详细规定了 浏览器 和 万维网服务器 之间互相通信的规则 客户端与服务端通信时传输的内容我们称之为报文(请求报文.响应报文) 常见的发送 get 请求方式 在浏 ...

  8. php中Http请求方法和响应状态码整理教程

    HTTP请求报文由请求行(request line).请求头部(header).空行和请求数据4个部分组成,格式如下 可见请求行由请求方法字段.URL字段和HTTP协议版本字段3个字段组成,它们用空格 ...

  9. HTTP协议—常见的HTTP响应状态码解析

    常见的HTTP响应状态码解析 1XX Informational(信息性状态码) 2XX Success(成功状态码) 3XX Redirection(重定向状态码) 4XX Client Error ...

随机推荐

  1. Android之listview添加数据篇

    一.ListView: 1. ListView通常有两个职责: 1.向布局填充数据 2.处理选择点击等操作 2.ListView的创建需要3个元素: 1. ListView中的每一列的View. 2. ...

  2. eclipse各版本及下载

    附:Eclipse各个版本简介(http://zh.wikipedia.org/wiki/Eclipse) eclipse下载地址: https://www.eclipse.org/官网--右上角的I ...

  3. Python全栈开发记录_第二篇(文件操作及三级菜单栏增删改查)

    python3文件读写操作(本篇代码大约100行) f = open(xxx.txt, "r", encoding="utf-8") 不写“r”(只读)默认是只 ...

  4. ORACLE_11G归档空间满,由于数据库装完后使用的是默认空间是闪回区

    1.首先根据alert跟踪日志发现归档空间满,路径大致如下:cd $ORACLE_BASE/diag/rdbms/jsswgsjk/jsswgsjk1/tracetail -f alert_jsswg ...

  5. flex兼容性之Webpack3+postcss+sass+css

    1:⚠️⚠️ 首先安装依赖 npm install --save-dev webpack style-loader css-loader postcss-loader sass-loader auto ...

  6. 规模预算 之 FP法(作成中)

    五大要素 「外部入力」「外部出力」「内部論理ファイル」 「外部インタフェースファイル」「外部照会」 优点 1) 開発初期段階での概算が可能 2) エンドユーザが認識可能な計測法である(ユーザ目線での機 ...

  7. 尚硅谷springboot学习29-docker常用命令和操作

    前提是要安装docker,有关docker的安装请参考相关资料,下面来看一下常用的操作命令 1).镜像操作 操作 命令 说明 检索 docker search 关键字 eg:docker search ...

  8. Python面向对象编程(下)

    本文主要通过几个实例介绍Python面向对象编程中的封装.继承.多态三大特性. 封装性 我们还是继续来看下上文中的例子,使用Student类创建一个对象,并修改对象的属性.代码如下: #-*- cod ...

  9. java.lang.String (JDK1.8)

    String类实现了java.io.Serializable, Comparable<String>, CharSequence这三个interface. 看了下这三个interface中 ...

  10. Could not find a package,configuration file provided by "G2O" ,G2OConfig.cmake,g2o-config.cmake

    因为项目需要使用到g2o,所以自己从git上面clone下来, git clone https://github.com/RainerKuemmerle/g2o.git 然后: cd g2o mkdi ...