RESTful

Posted wjs521

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了RESTful相关的知识,希望对你有一定的参考价值。

RESTful

  是一种软件的架构风格,设计风格,为客户端的交互提供一组设计原则的约束条件。

REST的理解

  Representational State Transfer 表征性转移,通常我们称为资源状态转移。

  资源 : 只要有被引用的必要的事物。

  URI 统一资源标志符。

  URL 统一资源定位符。

  URI是给我们的资源进行标识的,URL是描述我们资源地址的。

  统一资源接口:根据HTTP请求方式的不同,对资源进行不同的操作

  资源的表述其实就是资源的展现形式,我们客户端和服务端传输的都是资源的表述。

  总结:

    REST风格的特点如下:

    (1),在web中,只要有被引用的必要都叫资源。

    (2),每个URI代表一个资源,独一无二的。

    (3),客户端通过HTTP的方法,对服务器端资源进行操作;

    (4),客户端和服务器之间,传递这种资源的某种表现;

    (5),通过超链接的指引,实现‘表现层状态转移’;

restful规范

一 面向资源编程

  每个URL代表一种资源,URL中尽量不要用动词,要用名词。

二 根据method不同,进行不同的操作

  GET/POST//PUT/DELETE/PATCH

三 在URL中体现版本

  https://www.bootcss.com/v1/mycss

  https://v1.bootcss.com/mycss

四 在URL中体现是否是API

  https://www.bootcss.com/api/mycss

  https://api.bootcss.com/mycss

五 在URL中的过滤条件

  https://www.bootcss.com/v1/mycss?page=3

六 尽量使用HTTPS

  https://www.bootcss.com/v1/mycss

七 响应时设置状态码

  1.信息,服务器收到请求,需要请求者继续执行操作

  2.成功,操作被成功接收并处理

  3.重定向,需要进一步的操作以完成请求

  4.客户端错误,请求包含语法错误或无法完成请求

  5.服务器错误,服务器在处理请求的过程中发生了错误

八 返回值

  GET请求 返回查到所有或单条数据

  POST请求 返回新增的数据

  PUT请求 返回更新数据

  PATCH请求 局部更新 返回更新整条数据

  DELETE请求 返回值为空

九 返回错误信息

  返回值携带错误信息

十 Hypermedia API

  如果遇到需要跳转的情况 携带调转接口的URL

  ret = {

    code: 1000,

    data: {

      id: 1,

      name: ‘wjs‘,

      depart_id: http://www.luffycity.com/api/v1/depart/8/

    }  

  }

以上是关于RESTful的主要内容,如果未能解决你的问题,请参考以下文章

PHP restful 接口

python之干什么可以走的路线

Restful,SAOP,SOA,RPC的基础理解

springmvc rest风格化案例

17-Django-Django REST framework-REST framework及RESTful简介