首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Restful 表述性状态传递

Restful REST表述性状态传递 REST通常基于使用HTTP,URL,XML,HTML。...REST使用的数据格式为JSON HTTP方法 GET 获取数据 PUT 用于更新和添加数据 DELETE 用于删除数据 POST 添加数据 RESTful 一种基于http的架构方式 资源与URL REStful...URL可以看成资源的地址,可以看成资源的名称。...,因为此时是由客户端决定的 客户端不一定支持HTTP方法 rails 框架是通过隐藏参数的方法,达到传递真实请求的方式 资源的表述 客户端获取的只是资源的表述。...应用状态的转移 会话状态不是作为资源状态保存在服务器端的,而是被客户端作为应用状态进行跟踪的。客户端的应用在服务器端指引的超链接指引下发生变迁。

1.3K50
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    RESTful架构详解 转

    不过很多人直接把POST、 GET、PUT、DELETE直接对应上CRUD,例如在一个典型的rails实现的RESTful应用中就是这么做的。...我认为,这是因为rails默认使用服务端生成的ID作为URI的缘故,而不少人就是通过rails实践REST的,所以很容易造成这种误解。 客户端不一定都支持这些HTTP方法吧?...但客户端不是为了追求副作用而发出这些GET或HEAD请求的,产生副作用是服务端“自作主张”的。 另外,服务端在设计时,也不应该让副作用太大,因为客户端认为这些请求是不会产生副作用的。...不,确切的说,客户端获取的只是资源的表述而已。 资源在外界的具体呈现,可以有多种表述(或成为表现、表示)形式,在客户端和服务端之间传送的也是资源的表述,而不是资源本身。...很多人在设计RESTful架构时,使用很多时间来寻找漂亮的URI,而忽略了超媒体。所以,应该多花一些时间来给资源的表述提供链接,而不是专注于“资源的CRUD”。

    84731

    RESTful 架构详解

    不过很多人直接把POST、GET、PUT、DELETE直接对应上CRUD,例如在一个典型的rails实现的RESTful应用中就是这么做的。...我认为,这是因为rails默认使用服务端生成的ID作为URI的缘故,而不少人就是通过rails实践REST的,所以很容易造成这种误解。 客户端不一定都支持这些HTTP方法吧?...但客户端不是为了追求副作用而发出这些GET或HEAD请求的,产生副作用是服务端"自作主张"的。 另外,服务端在设计时,也不应该让副作用太大,因为客户端认为这些请求是不会产生副作用的。...不,确切的说,客户端获取的只是资源的表述而已。 资源在外界的具体呈现,可以有多种表述(或成为表现、表示)形式,在客户端和服务端之间传送的也是资源的表述,而不是资源本身。...很多人在设计RESTful架构时,使用很多时间来寻找漂亮的URI,而忽略了超媒体。所以,应该多花一些时间来给资源的表述提供链接,而不是专注于"资源的CRUD"。

    98320

    RESTful API设计系列三:URLs

    说明 原文链接:http://restful-api-design.readthedocs.io/en/latest/urls.html 用时: 2h Entry Point RESTful API有且只有一个入口点...推荐的URL规范是在API入口点后添加可用的集合或者资源的路径。这最好通过例子来描述。下图表格来自Rails中的“路由”实现,使用“:name”URL变量风格。...目前为止URL模板唯一的使用案例是在集合中搜索。搜索条件可以作为GET风格的查询参数附加到集合URL后面。...RFC3986允许使用分号来提供特定于路径段的选项。使用”?variant”格式查询参数的优势是,该格式只能用于路径段。...译者说 本文作者介绍了API的入口点(entry point),推荐使用RESTful API的绝对URL。同时介绍了URL含有参数时该如何处理。

    80610

    关于 restful api 路径定义的思考

    思考​ 此时不妨思考一个问题,现在以下几个接口,你会怎么去设计 url 路径?...而 查看我的文章 同样也可用此 URL,只需将 userId 更改为自己的便可。从 api 的 URL 来看是很舒服了,但是从代码开发的角度上问题又有了问题了。。。...于是在我尝试抓包拥有相关的网站后,我发现几乎都是后者的 url。后来一想,前者更像是获取某种资源,而不是用于创建资源。...写到最后​ 在我写这篇文章之前,我尝试抓包看过很多网站的请求 url,见识到各式各样的 url 路径,基本上很难找到遵循 restful api 风格的网站,绝大多数的操作除了获取外用 GET,其余全用...对于复杂的业务,restful api 风格实在过于难以胜任。 如果说变量命名是编程最大的痛苦,那么写接口最大的痛苦我想就是定义 url 路径了。

    23111

    Restful 架构 API 接口经典设计误区

    Restful 架构风格定义 “Restful 是一种软件架构风格、设计风格,而不是标准,只是提供了一组设计原则和约束条件。它主要用于客户端和服务器交互类的软件。...误区一 请求路径 URI 是动词,而不是名词问题 误区二 URI中带版本号问题 误区三 URI 中路径大小写问题 误区一 请求路径 URI 是动词,而不是名词问题 按照对 Restful 架构风格理解,...还有一种说法是,在路径中加版本号是错误的设计方式,在老外写的 Versioning REST Services 这篇文章指出,你应该在请求头的 Accept 指定你的版本号,而不是请求路径中。...PUT, POST 和 DELETE 方法 而不是 GET 方法来改变状态,不要使用 GET 进行状态改变: 使用复数名词 不要混淆名词单数和复数,为了保持简单,只对所有资源使用复数。.../cars 而不是 /car /users 而不是 /user /products 而不是 /product /settings 而部署 /setting 使用子资源表达关系 如果一个资源与另外一个资源有关系

    82020

    框架分析(6)-Ruby on Rails

    Ruby on Rails Ruby on Rails(简称Rails)是一种使用Ruby编程语言开发的开源Web应用程序框架。...例如,Rails会根据命名规范自动映射URL路径到控制器和动作,减少了手动配置路由的工作。...自动化测试 Rails框架鼓励开发人员编写自动化测试代码,以确保应用程序的稳定性和可靠性。Rails提供了一套完整的测试框架,包括单元测试、集成测试和功能测试等。...RESTful路由 Rails框架支持RESTful风格的路由,通过简单的配置,可以将URL路径与控制器和动作进行映射。这使得开发人员可以更容易地创建符合RESTful设计原则的API接口。...更新和维护 Rails框架在不断更新和演进,这意味着开发人员需要跟随框架的变化进行学习和更新。对于一些老旧的Rails项目,可能需要花费一些时间和精力来进行升级和维护。

    39020

    浅谈RESTful API设计风格

    RESTFUL适用于移动互联网厂商作为业务使能接口的场景,实现第三方OTT调用移动网络资源的功能,动作类型为新增、变更、删除所调用资源。...值得注意的是REST并没有一个明确的标准,而更像是一种设计的风格。 重点:RESTful是一种URL的设计风格。...解读:RESTful并没有严格的语法约定,不存在“必须满足什么条件才算是RESTful”,也并不是“不满足什么条件就一定不是RESTful”。...在RESTful架构中,浏览器使用POST,DELETE,PUT和GET四种请求方式分别对指定的URL资源进行增删改查操作。.../wl_1013/article/details/81049691 其实,RESTful风格有一个非常典型的特征:将核心参数直接作为URL的一部分,而不是作为参数来传递!

    84020

    Rails路由

    用于生成路径和URL地址的辅助方法 在创建资源路由时,会同时创建多个可以在控制器中使用的辅助方法,如上面的资源路由会创建以下方法: photos_path:返回值为 /photos new_photos_path...形式(photos_url),前者返回的是路径,后者返回的是完整的url地址。...RUL地址 除了使用路由辅助方法,Rails还可以从参数数组创建路径和URL地址,假如有以下路由: resources :magazine do resources :ads end 使用 magazine_ad_path...url_for 方法时传入一组对象,Rails会自动确定对应的路由: url_for([@magazine, @ad]) %> Rails能够识别各个实例...当然在使用 link_to 等辅助方法时,可以只指定对象,而不必完整调用 url_for 方法: <%= link_to

    4.5K20

    【Restful】你还不懂Restful API规范吗?

    何为restful呢? restful是一种软件架构风格、设计风格,而不是标准,只是提供了一组设计原则和约束条件。它主要用于客户端和服务器交互类的软件。...RESTful的关键是定义可表示流程元素/资源的对象。在REST中,每一个对象都是通过URL来表示的,对象用户负责将状态信息打包进每一条消息内,以便对象的处理总是无状态的。...animal_type_id=1:指定筛选条件 参数的设计允许存在冗余,即允许API路径和URL参数偶尔有重复。比如,GET /zoo/ID/animals 与 GET /animals?...URL设计规范 URL为统一资源定位器 ,接口属于服务端资源,首先要通过URL这个定位到资源才能去访问,而通常一个完整的URL组成由以下几个部分构成: URI = scheme "://" host...2.连字符用中杠"-“而不用下杠”_" 3.正确使用 “/“表示层级关系,URL的层级不要过深,并且越靠前的层级应该相对越稳定 4.结尾不要包含正斜杠分隔符”/” 5.URL中不出现动词,用请求方式表示动作

    1.5K40

    花5分钟看这篇之前,你才发现你不懂RESTful

    REST架构特征 既然知道REST和RESTful的联系和区别,现在就要开始好好了解RESTful的一些约束条件和规则,RESTful是一种风格而不是标准,而这个风格大致有以下几个主要特征: 以资源为基础...二、RESTful API设计规范 既然了解了RESTful的一些规则和特性,那么具体该怎么去设计一个RESTful API呢?要从URL路径、HTTP请求动词、状态码和返回结果等方面详细考虑。...URL设计规范 URL为统一资源定位器 ,接口属于服务端资源,首先要通过URL这个定位到资源才能去访问,而通常一个完整的URL组成由以下几个部分构成: URI = scheme "://" host...从大体样式了解URL路径组成之后,对于RESTful API的URL具体设计的规范如下: 不用大写字母,所有单词使用英文且小写。...总结 RESTful风格的API 固然很好很规范,但大多数互联网公司并没有按照或者完全按照其规则来设计,因为REST是一种风格,而不是一种约束或规则,过于理想的RESTful API 会付出太多的成本。

    1.3K41

    RESTful API的十个最佳实践1. 使用名词而不是动词 2. Get方法和查询参数不应该改变资源状态3. 使用名词的复数形式 4. 为关系使用子资源 5. 使用HTTP头决定序列化格式 6. 使

    以下是设计RESTful API的是个最佳实践: 1....使用名词而不是动词 为了易于理解,为资源使用下面的API结构: Resource Getread Postcreate Putupdate Delete /cars 返回一个car的列表 创建一个新的car...Get方法和查询参数不应该改变资源状态 使用Put,Post和Delete方法替代Get方法来改变资源状态。不要使用Get来使状态改变: GET /users/711?...为关系使用子资源 假如资源连接到其它资源,则使用子资源形式: GET /cars/711/drivers/ Returns a list of drivers for car 711 GET /cars...允许重写HTTP方法 一些代理只支持GET和POST方法,为了在这种限制下支持RESTful API,API需要重写HTTP方法。

    2.9K50

    _Spring MVC相关注解运用 —— 中篇

    一、RESTful风格支持1.1 RESTful风格介绍 RESTful风格是一种URL路径的设计风格。...在RESTful风格的URL路径中,网络上的任意数据都可以看成一个资源,它可以是一段文本、一张图片,也可以是一个Java对象。...而每个资源都会占据一个网络路径,无论对该资源进行增删改查,访问的路径是一致的。 传统URL: 查找id为1的学生:http://localhost:8080/student/findById?...之前我们学过两种请求方式,GET请求和POST请求,而访问RESTful风格的URL一共有四种请求方式: GET请求:查询操作POST请求:新增操作DELETE请求:删除操作PUT请求:修改操作 RESTful...:添加描述 OK,这里的name加了@ModelAttribute注解,因此是从model中获取的 ,并不是从请求路径上面获取的。

    17120

    【愚公系列】2023年04月 Java教学课程 142-Spring MVC框架的(文件上传下载、Restful风格API)

    风格配置 3.1 Rest Rest( REpresentational State Transfer) 一种网络资源的访问风格,定义了网络资源的访问方式 传统风格访问路径 http...id=1 Rest风格访问路径 http://localhost/user/1 Restful是按照Rest风格访问网络资源 优点 隐藏资源的访问行为,通过地址无法得知做的是何种操作...风格,而不是Rest规范 3.3 Restful开发入门 //设置rest风格的控制器 @RestController //设置公共访问路径,配合下方访问路径使用 @RequestMapping("/user...get(@PathVariable Integer id){ System.out.println("restful is running ....get:"+id);...>/url-pattern> 开启SpringMVC对Restful风格的访问支持过滤器,即可通过页面表单提交PUT与DELETE

    33910

    什么是RESTful?相关的注解有哪些?

    2、RESTfulRESTful:是指根据REST风格对资源进行访问。二、操作类型我们根据REST风格访问资源时使用的行为动作,来区分对资源进行了何种操作。...举例如下:URL 代表含义http://localhost/users 查询全部用户信息 GET(查询) http://localhost/users/1 查询指定用户信息...常用的请求方法:GET(查询)、POST(新增/保存)、PUT(修改/更新)、DELETE(删除)为什么称其为REST风格而不是REST规范呢?因为这些行为只是一种约定方式,并不是规范。...描述模块的名称通常使用复数,用于表示某类资源,如: users、books等三、相关注解1、使用步骤1)设定 http请求动作(动词)2)设定请求参数(路径变量)2、相关注解说明1)@RequestMapping...,每种对应一个请求动作,例如@GetMapping对应GET请求4)属性:value (默认)-->请求访问路径1.3 代码示例如下就是使用RESTful简化开发后的效果,注释掉的是之前的,形成对比。

    21010

    避免自己写的 url 被diss!建议看看这篇RestFul API简明教程!

    举个例子,如果我给你下面两个 url 你是不是立马能知道它们是干什么的!这就是 RestFul API 的强大之处!...RestFul API 可以你看到 url + http method 就知道这个 url 是干什么的,让你看到了 http 状态码(status code)就知道请求结果如何。...比如我们的班级 classs 是代表一个集合形式的资源,而特定的 class 代表单个个体资源。...因为 REST 中的资源往往和数据库中的表对应,而数据库中的表都是同种记录的"集合"(collection)。如果 API 调用并不涉及资源(如计算,翻译等操作)的话,可以用动词。...param1=11¶m2=33 不用大写字母,建议不用中杠 - 不用下杠 _ 比如邀请码写成 invitation-code而不是 invitation_code Talk is cheap!

    95320

    RestFul风格详解

    文章目录 一、前言 二、什么是RestFul风格 三、传统风格与RestFul风格对比 1. 传统方式操作资源 2....风格 Restful就是一个资源定位、资源操作的风格。...资源:互联网所有的事物都可以被抽象为资源 资源操作:分为POST、DELETE、PUT、GET四种方法,使用不同方法对资源进行操作(增、删、改、查) 三、传统风格与RestFul风格对比 1....id=1 (删除,GET或POST) 2. RestFul方式操作资源 可以通过不同的请求方式来实现不同的效果! 如下:请求地址一样,但是功能可以不同!...,如果类型不一样,则访问不到对应的请求方法,如果这里访问是的路径是 /commit/1/a,则路径与方法不匹配,而不会是参数转换失败。

    1.1K30
    领券