RESTful 接口

本文我们来谈谈,关于 REST 接口。

什么是 RESTful 接口

REST -> Respresentational State Transfer(表述性状态转移)

REST 将资源的状态以适合客户端的形式从服务端发送到客户端(或相反方向)。在 REST 中,通过 URL 进行资源定位,用 HTTP 动作(GET、POST、DELETE、PUT等)描述进行操作,完成功能。

RESTful 表示 REST 的形容词。

RESTful 接口是一种设计风格,用于构建网络应用程序的 API

RESTful 接口 中,每个资源都由唯一的 URL 标识,比使用 HTTP 方法(如GET、POST、PUT、DELETE)对资源进行操作。这些 HTTP 方法对应了服务端执行的操作,例如获取资源、创建资源、更新资源或删除资源。

RESTful 接口 还使用 HTTP 状态码来表示请求的处理结果,例如 200 表示成功、404 表示资源未找到等。RESTful 接口 还支持数据的不同表示格式常用的有 JSONXML

REST 特征

REST 有以下的特征:

  • 客户 - 服务端(client - server) :提供服务的服务器和使用服务的客户端需要被隔离对待
  • 无状态(stateless) :服务器端不存储客户的请求中的信息,客户的每一个请求必须包含服务器处理该请求所需的信息,所有的资源都可以通过 URI 定位,而且这个定位与其他资源无关,也不会因为其他资源的变化而变化。
  • 可缓存(cacheable):服务器必须让客户端知道请求是否可以被缓存。
  • 分层系统(layered System):服务器和客户端之间的通信必须被标准化。
  • 统一接口(uniform interface) :客户端和服务器之间的通信方法必须统一,RESTful 风格的数据元操作 CRUD(Create、Read、Update、Delete) 分别对应 HTTP 方法 - Post 创建新资源,Get 获取资源,Put 更新资源和 Delete 删除资源,这样就能统一数据操作的接口。
  • HTTP 状态码 :状态码在 REST 中都有特定的意义,比如 401 表示用户身份认证失败。
  • 支持按需代码(Code-On-Demand,可选):服务器可以提供一些代码或脚本,并在客户的运行环境中执行。

相关案例会在后面的文章中进行补充~

参考

相关推荐
kakacc:5 分钟前
SpringBoot+Hutool+Vue实现导出
java·vue.js·spring boot
勤劳打代码39 分钟前
妙笔生花 —— Flutter 实现飞入动画
前端·flutter·设计模式
某空_43 分钟前
【Android】使用ViewPager2实现简单的轮播图
java
武子康43 分钟前
Java-145 深入浅出 MongoDB 基本操作详解:数据库查看、切换、创建集合与删除完整教程
java·数据库·sql·mysql·mongodb·性能优化·系统架构
银安1 小时前
CSS排版布局篇(4):浮动(float)、定位(position) 、层叠(Stacking)
前端·css
昭昭日月明1 小时前
mac 效率工具:Raycast 的扩展开发
前端·mac·设计
white-persist1 小时前
XXE 注入漏洞全解析:从原理到实战
开发语言·前端·网络·安全·web安全·网络安全·信息可视化
练习时长一年1 小时前
Spring内置功能
java·前端·spring
铉铉这波能秀1 小时前
如何在Android Studio中使用Gemini进行AI Coding
android·java·人工智能·ai·kotlin·app·android studio