http报文和常用状态码

一、概述

  1. 网络请求的基础
  2. HTTP请求方式和报文解析
  3. Cookie 和 Session的理解与使用
  4. HTTP Cache缓存机制
  5. 封装网络请求
  6. TCP 和 Socket

二、HTTP请求方式

HTTP提供了七中请求方式:GET、、POST、DELETE、PUT、HEAD、TRACE、OPTIONS,POST,DELETE、PUT、GET分别对应资源的增、删、改、查,也是使用最多的请求方式;

  1. GET

    • GET请求报文和服务器的响应报文
    • GET /sn/index.php?sn=123&n=asa HTTP/1.1 Accept: */*
      Accept-Language: zh-cn host: localhost Content-Type:
      application/x-www-form-urlencoded Content-Length: 12
      Connection:close
    • 服务器响应报文
      HTTP/1.1 200 OK
      Content-Type: text/php
      Content-Length: 1024
      上述请求的资源是sn/index.php文件,GET请求是将请求参数放在URL之后,第一个参数之前使用“?“,之后的参数格式为:参数名=参数值,参数名之间使用”&“连接,如:sn/index.php?sn=123&n=asa
  2. post

    • POST请求通常是使用来提交HTML的表单,表单中的数据传输到服务器,由服务器对这些数据处理,请求和响应的报文如下:

    • POST /sn/index.php HTTP/1.1
      Accept: /
      Accept-Language: zh-cn
      host: localhost
      Content-Type: application/x-www-form-urlencoded
      Content-Length: 12
      Connection:close

      sn=123&n=asa
      在http头后边有一空行,空行后边接着发送post数据,长度通过Content-Length: 12
      指出,此post数据中包含两项
      sn=123
      n=asa

    • POST服务器响应报文
      HTTP/1.1 200 OK
      Content-Type: text/php
      Content-Length: 21

      Success

  3. PUT
    与GET从服务器获取数据相反的是,PUT是想服务器写入资源,比如像CSDN这样允许用户创建Web页面,并用PUT直接传输到服务器上,返回服务器上的资源地址;
    PUT new.text HTTP/1.1
    Host: host
    Content-Type: text/html
    Content-Length:128

    This is file content

    • PUT服务器响应报文
      HTTP/1.1 200 OK
      Content-Type: text/html
      Content-Length: 1026

      host

  4. DELETE
    使用方法和GET一样,请求删除URL指定的资源文件

HTTP请求报文

HTTP的请求报文由请求行(Request line)、请求头部(Header)空行和请求数据;
在这里插入图片描述

  1. 请求行:请求报文的第一行,用来说明以什么方式请求、请求的地址和HTTP版本
  2. 头部字段:每个头部字段都包含一个名字和值,二者之间采用“:”连接,如:Connection:Keep-Alive
  3. 请求数据:请求数据:请求的主体根据不同的请求方式请求主体不同。
  • GET、DELETE
    这两种简单,看上面即可
  • POST、PUT
    POST和PUT的请求行和请求头部,在上述已经列出,现在主要介绍请求报文中的参数:
    1. 一个参数的开始是由“–”加上boundary开始的
    2. 然后加上参数的Header信息,格式为字段名和字段值,二者之间使用“:”连接,如:Content-Type:text/plain
    3. 加上一个空行
    4. 发送的参数值
    5. 请求的数据以“–”+boundary+“–”结束真个请求的报文结束符

四、HTTP响应报文

HTTP的响应报文为3个部分组成:状态行、消息报文、响应正文
在这里插入图片描述

  1. 状态行:由HTTP版本、响应状态码、响应状态描述;如:HTTP/1.1 200 OK
  2. 响应报文头部:使用关键字和值表示,二者使用“:”隔开;如:Content-Type:text/html
  3. 响应内容:请求空行之后就是请求内容
  • 常见状态码描述
    HTTP状态码由三个十进制数字组成,第一个十进制数字定义了状态码的类型,后两个数字没有分类的作用。HTTP状态码共分为5种类型:
    在这里插入图片描述
    1. 200 OK:客户端请求成功
    2. 400 Bad Request: 客户端请求语法错误、服务器无法解析
    3. 401 Unauthorized:请求未经授权
    4. 403 Forbidden:服务器收到请求拒绝服务
    5. 404 Not Found:请求资源不存在,常见URL错误
    6. 500 Internal Server Error:服务端内部错误
    7. 503 Server Unavailable:服务器当前不能处理客户端请求
    8. 301 Moved Permanently :永久重定向请求的资源已被永久的移动到新URI,返回信息会包括新的URI,浏览器会自动定向到新URI。今后任何新的请求都应使用新的URI代替
    9. 302 Found :临时移动。与301类似。但资源只是临时被移动。客户端应继续使用原有URI
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值