zoukankan      html  css  js  c++  java
  • HTTP之请求报文和响应报文

    请求方法
    1.OPTIONS
      返回服务器针对特定资源所支持的HTTP请求方法,也可以利用向web服务器发送‘*’的请求来测试服务器的功能性
    2.HEAD
      向服务器索与GET请求相一致的响应,只不过响应体将不会被返回。这一方法可以再不必传输整个响应内容的情况下,就可以获取包含在响应小消息头中的元信息。
    3.GET
      向特定的资源发出请求。它本质就是发送一个请求来取得服务器上的某一资源。资源通过一组HTTP头和呈现数据(如HTML文本,或者图片或者视频等)返回给客户端。GET请求中,永远不会包含呈现数据。
    4.POST
      向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST请求可能会导致新的资源的建立和/或已有资源的修改。 Loadrunner中对应POST请求函数:web_submit_data,web_submit_form
    5.PUT
      向指定资源位置上传其最新内容
    6.DELETE
      请求服务器删除Request-URL所标识的资源
    7.TRACE
      回显服务器收到的请求,主要用于测试或诊断
    8.CONNECT
      HTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器。

    请求头 

     1 Client-IP:提供了运行客户端的机器的IP地址
     2 From:提供了客户端用户的E-mail地址
     3 Host:给出了接收请求的服务器的主机名和端口号(如没有指定端口,表示使用默认端口80)
     4 Referer:提供了包含当前请求URI的文档的URL
     5 UA-Color:提供了与客户端显示器的显示颜色有关的信息
     6 UA-CPU:给出了客户端CPU的类型或制造商
     7 UA-OS:给出了运行在客户端机器上的操作系统名称及版本
     8 User-Agent:将发起请求的应用程序名称告知服务器       
     9 Accept:告诉服务器能够发送哪些媒体类型
    10 Accept-Charset:告诉服务器能够发送哪些字符集
    11 Accept-Encoding:告诉服务器能够发送哪些编码方式
    12 Accept-Language:告诉服务器能够发送哪些语言
    13 TE:告诉服务器可以使用那些扩展传输编码
    14 Expect:允许客户端列出某请求所要求的服务器行为
    15 Range:如果服务器支持范围请求,就请求资源的指定范围
    16 Cookie:客户端用它向服务器传送数据
    17 Cookie2:用来说明请求端支持的cookie版本
    状态码

    在http协议中,状态码被分为了5大类

    • 100~199(信息性状态码)
    • 200~299(成功状态码)
    • 300~399(重定向状态码)
    • 400~499(客户端错误状态码)
    • 500~599(服务器端错误状态码)

    常见的状态码

     1 100:继续 客户端应当继续发送请求。客户端应当继续发送请求的剩余部分,或者如果请求已经完成,忽略这个响应。
     2 
     3 101: 转换协议 在发送完这个响应最后的空行后,将会切换到在Upgrade 消息头中定义的那些协议。只有在切换新的协议更有好处的时候才应该采取类似措施。
     4 
     5 102:继续处理 由WebDAV(RFC 2518)扩展的状态码,代表处理将被继续执行。
     6 
     7 200:请求成功 处理方式:获得响应的内容,进行处理
     8 
     9 201:请求完成,结果是创建了新资源。新创建资源的URI可在响应的实体中得到 处理方式:爬虫中不会遇到
    10 
    11 202:请求被接受,但处理尚未完成 处理方式:阻塞等待
    12 
    13 204:服务器端已经实现了请求,但是没有返回新的信 息。如果客户是用户,则无须为此更新自身的文档视图。 处理方式:丢弃
    14 
    15 300:该状态码不被HTTP/1.0的应用程序直接使用, 只是作为3XX类型回应的默认解释。存在多个可用的被请求资源。 处理方式:若程序中能够处理,则进行进一步处理,如果程序中不能处理,则丢弃 
    16 301:请求到的资源都会分配一个永久的URL,这样就可以在将来通过该URL来访问此资源 处理方式:重定向到分配的URL
    17 
    18 302:请求到的资源在一个不同的URL处临时保存 处理方式:重定向到临时的URL
    19 
    20 304:请求的资源未更新
    21 
    22 400:非法请求
    23 
    24 401:未授权 处理方式:丢弃
    25 
    26 403:禁止 处理方式:丢弃
    27 
    28 404:没有找到 处理方式:丢弃
    29 
    30 500:服务器内部错误 服务器遇到了一个未曾预料的状况,导致了它无法完成对请求的处理。一般来说,这个问题都会在的源代码出现错误时出现。
    31 
    32 501:服务器无法识别 服务器不支持当前请求所需要的某个功能。当服务器无法识别请求的方法,并且无法支持其对任何资源的请求。
    33 
    34 502:错误网关 作为网关或者工作的服务器尝试执行请求时,从上游服务器接收到无效的响应。
    35 
    36 503:服务出错 由于临时的维护或者过载,服务器当前无法处理请求。这个状况是临时的,并且将在一段时间以后恢复。

    响应头:

     1 Age:(从最初创建开始)响应持续时间
     2 
     3 Public:服务器为其资源支持的请求方法列表
     4 
     5 Retry-After:如果资源不可用的话,在此日期或时间重试
     6 
     7 Server:服务器应用程序软件的名称和版本
     8 
     9 Title:对HTML文档来说,就是HTML文档的源端给出的标题
    10 
    11 Warning:比原因短语更详细一些的警告报文
    12 
    13 Accept-Ranges:对此资源来说,服务器可接受的范围类型
    14 
    15 Vary:服务器会根据这些首部的内容挑选出最适合的资源版本发送给客户端
    16 
    17 Proxy-Authenticate:来自代理的对客户端的质询列表
    18 
    19 Set-Cookie:在客户端设置数据,以便服务器对客户端进行标识
    20 
    21 Set-Cookie2:与Set-Cookie类似
    22 
    23 WWW-Authenticate:来自服务器的对客户端的质询列表
  • 相关阅读:
    查询SQL数据库中表占用资源情况的语句
    修改VMware网卡MAC的方法
    Ajax 与 .net Validator
    控件属性值绑定到数据
    一个设计的小例子警察抓小偷
    加密Web.config 文件中的敏感信息
    VS .Net 2005程序集换名之后的遗留问题
    为ASP.Net 创建和配置应用程序服务数据库
    ArcGIS 9.0 在Windows XP SP2 上安装的问题(数据保护造成的)
    使用客户端脚本
  • 原文地址:https://www.cnblogs.com/Inbreeze/p/13945552.html
Copyright © 2011-2022 走看看