前端之HTTP(二)

来源:互联网 发布:php server 编辑:程序博客网 时间:2024/06/10 07:21

1.URL与URI

URL:(Uniform/Universal Resource Locator 的缩写,统一资源定位符)。URI:(Uniform Resource Identifier 的缩写,统一资源标识符)(代表一种标准)。    URI—Universal Resource Identifier通用资源标志符Web上可用的每种资源如HTML文档、图像、视频片段、程序等都是一个来URI来定位的URI一般由三部组成①访问资源的命名机制②存放资源的主机名③资源自身的名称,由路径表示,着重强调于资源。    URL—Uniform Resource Location统一资源定位符URL是Internet上用来描述信息资源的字符串,主要用在各种WWW客户程序和服务器程序上,特别是著名的Mosaic。采用URL可以用一种统一的格式来描述各种信息资源,包括文件、服务器的地址和目录等。URL一般由三部组成①协议(或称为服务方式)②存有该资源的主机IP地址(有时也包括端口号)③主机资源的具体地址。如目录和文件名等    URI 是统一资源标识符,而 URL 是统一资源定位符。因此,笼统地说,每个 URL 都是 URI,但不一定每个 URI 都是 URL。这是因为 URI 还包括一个子类,即统一资源名称 (URN),它命名资源但不指定如何定位资源。上面的 mailto、news 和 isbn URI 都是 URN 的示例。     URI 和 URL 概念上的不同反映在此类和 URL 类的不同中。 此类的实例代表由 RFC 2396 定义的语法意义上的一个 URI 引用。URI 可以是绝对的,也可以是相对的。对 URI 字符串按照一般语法进行解析,不考虑它所指定的方案(如果有)不对主机(如果有)执行查找,也不构造依赖于方案的流处理程序。相等性、哈希计算以及比较都严格地根据实例的字符内容进行定义。换句话说,一个 URI 实例和一个支持语法意义上的、依赖于方案的比较、规范化、解析和相对化计算的结构化字符串差不多。     作为对照,URL 类的实例代表了 URL 的语法组成部分以及访问它描述的资源所需的信息。URL 必须是绝对的,即它必须始终指定一个方案。URL 字符串按照其方案进行解析。通常会为 URL 建立一个流处理程序,实际上无法为未提供处理程序的方案创建一个 URL 实例。相等性和哈希计算依赖于方案和主机的 Internet 地址(如果有);没有定义比较。换句话说,URL 是一个结构化字符串,它支持解析的语法运算以及查找主机和打开到指定资源的连接之类的网络 I/O 操作

2.请求方式

2.1GET    安全且幂等    获取表示    变更时获取表示(缓存)    200(OK) - 表示已在响应中发出    204(无内容) - 资源有空表示    301(Moved Permanently) - 资源的URI已被更新    303(See Other) - 其他(如,负载均衡)    304(not modified)- 资源未更改(缓存)    400 (bad request)- 指代坏请求(如,参数错误)    404 (not found)- 资源不存在    406 (not acceptable)- 服务端不支持所需表示    500 (internal server error)- 通用错误响应    503 (Service Unavailable)- 服务端当前无法处理请求2.2 POST    不安全且不幂等    使用服务端管理的(自动产生)的实例号创建资源    创建子资源    部分更新资源    如果没有被修改,则不过更新资源(乐观锁)    200(OK)- 如果现有资源已被更改    201(created)- 如果新资源被创建    202(accepted)- 已接受处理请求但尚未完成(异步处理)    301(Moved Permanently)- 资源的URI被更新    303(See Other)- 其他(如,负载均衡)    400(bad request)- 指代坏请求    404 (not found)- 资源不存在    406 (not acceptable)- 服务端不支持所需表示    409 (conflict)- 通用冲突    412 (Precondition Failed)- 前置条件失败(如执行条件更新时的冲突)    415 (unsupported media type)- 接受到的表示不受支持    500 (internal server error)- 通用错误响应    503 (Service Unavailable)- 服务当前无法处理请求2.3 PUT    不安全但幂等    用客户端管理的实例号创建一个资源    通过替换的方式更新资源    如果未被修改,则更新资源(乐观锁)    200 (OK)- 如果已存在资源被更改    201 (created)- 如果新资源被创建    301(Moved Permanently)- 资源的URI已更改    303 (See Other)- 其他(如,负载均衡)    400 (bad request)- 指代坏请求    404 (not found)- 资源不存在    406 (not acceptable)- 服务端不支持所需表示    409 (conflict)- 通用冲突    412 (Precondition Failed)- 前置条件失败(如执行条件更新时的冲突)    415 (unsupported media type)- 接受到的表示不受支持    500 (internal server error)- 通用错误响应    503 (Service Unavailable)- 服务当前无法处理请求2.4 DELETE    不安全但幂等    删除资源    200 (OK)- 资源已被删除    301 (Moved Permanently)- 资源的URI已更改    303 (See Other)- 其他,如负载均衡    400 (bad request)- 指代坏请求    404 (not found)- 资源不存在    409 (conflict)- 通用冲突    500 (internal server error)- 通用错误响应    503 (Service Unavailable)- 服务端当前无法处理请求

3.http1.1中支持一下几种方式

 OPTIONS,HEAD,DELETE,PUT,TRACE,CONNECT
原创粉丝点击