Restful入门-1

1.Restful是什么?

Restful架构,是一个符合REST的约束条件和原则的架构,也可以说是一套API规范。
REST即Representational State Transfer,译为表述性状态转移。

2.Restful内容?

首先让我们列举几个关键词
资源、URI、URL设计、状态码

2.1 资源
资源既包括实体,也包括抽象概念,能被利用的事物便是资源。如黄金的价值、身份信息等。
2.2 URI
URI全称Uniform Resource Identifier,译为统一资源标识符。这是一个资源唯一的标识,就像一个人的身份证。想要获取这个资源的信息,访问它的URI就可以。因此,URI的设计也要符合一定规范。如下:

  • 使用名词,尽量用复数,如/names
  • 使用嵌套表示关联关系,如/names/bob
  • 使用_或-来让URI可读性更好,如/news/1/china-car;使用?用来过滤资源,通常对应的是一些特定条件的查询结果或算法运算结果,如 /news/12/car/1,应修改为 /news/12?car=1;

2.3 URL 统一资源定位器 (Uniform Resource Locator)客户想对数据操作(增删查改),就必须涉及URL且使用正确的HTTP方法,如GET、POST、PUT、DELETE。注意,客户端发出的数据操作指令都是"动词 + 宾语"的结构。就是阅读书籍,这种阅读+书籍的动词+宾语结构,这个宾语就是URL。

  • 这里四个动词均为HTTP动词,GET:从服务器取出资源(一项或多项),POST:在服务器新建一个资源,PUT:在服务器更新资源(客户端提供改变后的完整资源),DELETE:从服务器删除资源。
  • 这里对URI和URL作一个说明,URI是以一种抽象的,高层次概念定义统一资源标识.。URL是一种具体的URI,即URL可以用来标识一个资源,而且还指明了如何locate这个资源。如URL是http://zhidao.baidu.com/question/123.html,其中URI是/question/123.html,百度的服务器把http://zhidao.baidu.com/制作成了虚拟路径的根。

2.4 状态码
客户每一次请求,服务器就必须给出回应。HTTP协议-响应,组成格式:状态行、消息报头、响应正文。

  • 状态行,格式:HTTP-Version Status-Code Reason-Phrase CRLF,也就是HTTP版本号 状态号 原因描述 举例:HTTP/1.1 200 OK

  • 常用状态码:

    200 OK //客户端请求成功

    400 Bad Request //客户端请求有语法错误,不能被服务器所理解

    401 Unauthorized //服务器收到请求,但是拒绝提供服务

    404 Not Found //请求资源不存在

    500 Internal Server Error //服务器发生不可预期的错误

    503 Server Unavailable //服务器当前不能处理客户端的请求
    因此状态码命名为一个三位数,分几类,分别是
    1xx:相关信息
    2xx:操作成功
    3xx:重定向
    4xx:客户端错误
    5xx:服务器错误

上一篇:7.9 关于session-cookie


下一篇:第五章 跳转到拨打电话 2.8