zoukankan      html  css  js  c++  java
  • web服务器底层-http请求与相应

    http请求
    请求分为三个部分:请求行、请求头、请求数据
    请求行
      请求方式(GET/POST等) 请求目录,分层(/books/1.html) HTTP协议版本(HTTP/1.1),请求方式有:POST GET HEAD OPTIONS DELETE TRACE PUT。一般用GET/POST,get方式是通过‘?参数’的形式在url里面显示,显示直白。post方式则没有参数显示,适合比较大的数据传送。

    请求头(客户机环境)
    一般的请求头有:
      Accept:用于告诉服务器客户机支持的数据类型
      Accept-Charset:用于告诉服务器,客户机采用的编码
      Accept-Encoding:用于告诉服务器,客户机支持的数据压缩格式
      Accept-Language:客户机的语言环境(国际化语言,根据国家的不同而不同)
      UA-CPU:操作系统平台
      Host:告诉服务器想访问的主机名
      If-Modified-Since:告诉服务器资源的缓存时间
      Referer:告诉服务器,客户机是从哪个资源来访问服务器的(防盗链)
      User-Agent:告诉服务器客户机的软件环境
      Cookie:通过这个头可以向服务器带一点数据
      Connection:说明这个请求之后断开还是保持连接(close/Keep-Alive)
      Date:当前日期

      Range:续传,值为"bytes=5-"表示第5个字节后的内容,"bytes=1000"表示最后1000个字节。


    http响应
    http响应分为三部分:状态行、响应头、实体内容
    状态行
    HTTP版本号 状态码 原因叙述(CRLF)
      eg:HTTP/1.0 200 OK
      状态码:

        100-199,表示成功接收请求,要求客户端继续提交下一次请求才能完成整个处理过程
        200-299,表示成功接收请求并已完成整个处理过程常用200
        300-399,表示未完成请求,客户端需进一步细化请求。例如,请求的资源已经移动地址,常用30(服务器让客户端去找别人)、307/304(让客户端去拿缓存)
        400-499,客户端请求有错误,常用404(没有该资源)、403(没有权限)
        500-599,服务端出现错误,常用500
    响应头

      Location:这个头配合302状态吗使用,用于告诉客户软件
      Server:服务器通过这个头告诉浏览器服务器的类型
      Content-Encoding:服务器通过这个头告诉浏览器数据的压缩格式。gzip
      Content-Length:告诉浏览器压缩数据的长度。
      Content-Language:语言环境
      Content-Type:告诉浏览器回送数据的类型。
      Last-Modified:最后修改时间
      Refresh:告诉浏览器隔多长时间刷新一次。
      content-Disposition:服务器通过这个头,告诉浏览器以下载方式打开数据。eg"attachment;filename=2.jpg"
      transfer-Encoding:数据的传送格式。
      ETag:缓存相关的头
      Expires:告诉浏览器把回送的资源缓存多长时间。-1或0则不缓存。
      Cache-Control:no-cache
      pragma:no-cache.以上两个也表示不缓存。 

      Accept-Range:告诉浏览器服务器是否支持续传,支持返回bytes,否则返回none(现在服务器一般都支持)。
      Content-Range:续传内容大小。eg:Content-Range:1000-3000/5000,总大小5000,续传1000到3000

    响应数据

  • 相关阅读:
    软考知识点梳理--综合布线
    软考知识点梳理--典型应用集成技术
    软考知识点梳理--V型生命周期模型
    软考知识点梳理--人际沟通风格
    软考知识点梳理--沟通原则
    软考知识点梳理--项目建议书
    软考知识点梳理--版本管理
    软考知识点梳理--信息系统集成项目及特点
    软考知识点梳理--信息论
    软考知识点梳理--项目验收
  • 原文地址:https://www.cnblogs.com/jamsbwo/p/4162955.html
Copyright © 2011-2022 走看看