什么是 REST?

REST 是 REpresentational State Transfer 的缩写。REST 是一种基于 Web 标准的软件架构,它使用 HTTP 协议处理数据通信。它以资源为中心,其中每个组成部分都是一个资源,并且资源通过使用 HTTP 标准方法的公共接口访问。REST 由 Roy Fielding 在 2000 年首次提出。

在 REST 架构中,一个 REST 服务器只提供对资源的访问,REST 客户端访问并呈现资源。这里每个资源都通过 URIs/ 全局 ID 标识。REST 使用各种不同的表现形式表示资源,比如文本,JSON 和 XML。目前,JSON 是用于 Web 服务最流行的格式。

HTTP 方法

下面是常用于基于 REST 架构中的众所周知的 HTTP 方法:

  • GET - 提供资源的只读访问。
  • PUT - 用于创建一个新资源。
  • DELETE - 用于移除一个资源。
  • POST - 用于更新现有资源或者创建一个新资源。
  • OPTIONS - 用于获取资源上支持的操作。

RESTFul Web 服务

一个 Web 服务就是一个用于在应用程序或系统之间交换数据的开放协议和标准的集合。使用不同语言编写以及运行在不同平台上的软件应用可以使用 Web 服务跨计算机网络交换数据,比如互联网的方式类似于一台计算机上的进程通信。这种互操作性(比如,Java 和 Python,或者 Windows 和 Linux 应用程序之间)归功于开放标准的使用。

这种基于 REST 架构的 Web 服务就被称为 RESTful Web 服务。这些 Web 服务使用 HTTP 方法实现 REST 架构的概念。一个 RESTful Web 服务通常定义了一个 URI,即统一资源标示符服务;提供资源表示形式比如 JSON 和设置 HTTP 方法。

创建 RESTFul Web 服务

本教程将会创建一个带以下功能的用户管理 Web 服务:

编号 HTTP 方法 URI 操作 操作类型
1 GET /UserService/users 获取用户列表 只读
2 GET /UserService/users/1 获取 ID 为 1 的用户 只读
3 PUT /UserService/users/2 插入 ID 为 2 的用户 幂等
4 POST /UserService/users/2 更新 ID 为 2 的用户 N/A
5 DELETE /UserService/users/1 删除 ID 为 1 的用户 幂等
6 OPTIONS /UserService/users 列出 Web 服务所支持的操作 只读

RESTful Web 服务 - 介绍相关推荐

  1. restful api_将Spring MVC RESTful Web服务迁移到Spring 4

    restful api 1引言 Spring 4为MVC应用程序带来了一些改进. 在这篇文章中,我将重点介绍宁静的Web服务,并通过采用Spring 3.2实现的项目并将其升级到Spring 4来尝试 ...

  2. 使用 Jersey 和 Apache Tomcat 构建 RESTful Web 服务

    http://www.ibm.com/developerworks/cn/web/wa-aj-tomcat/ 使用 Jersey 和 Apache Tomcat 构建 RESTful Web 服务 Y ...

  3. Spring 3 RESTful Web服务

    Spring 3提供了对RESTful Web服务的支持. 在本教程中,我们将向您展示如何在Spring中实现RESTful Web服务 ,或者如何将现有的Spring服务公开为RESTful Web ...

  4. 将Spring MVC RESTful Web服务迁移到Spring 4

    1引言 Spring 4为MVC应用程序带来了一些改进 . 在这篇文章中,我将重点介绍宁静的Web服务,并通过采用Spring 3.2实现的项目并将其升级到Spring 4来尝试这些改进.以下几点总结 ...

  5. 使用Spring MVC开发Restful Web服务

    REST简介 摘自Wikipedia: REST风格的体系结构由客户端和服务器组成. 客户端向服务器发起请求: 服务器处理请求并返回适当的响应. 请求和响应围绕资源表示的传递而构建. 资源本质上可以是 ...

  6. RESTful Web服务可发现性,第4部分

    这是有关使用Spring 3.1和Spring Security 3.1和基于Java的配置来建立安全的RESTful Web Service的系列文章的第四篇 . 本文将重点介绍REST API,H ...

  7. 使用Spring Security 3.1保护RESTful Web服务,第3部分

    1.概述 本教程显示了如何使用Spring和基于Java的Spring Security 3.1来保护REST服务 . 本文将重点介绍如何使用"登录和Cookie"方法专门针对RE ...

  8. Spring3 RESTful Web服务

    Spring 3提供了对RESTful Web服务的支持. 在本教程中,我们将向您展示如何在Spring中实现RESTful Web服务 ,或者如何将现有的Spring服务公开为RESTful Web ...

  9. 使用 Spring 3 MVC HttpMessageConverter 功能构建 RESTful web 服务

    Spring,构建 Java™ 平台和 Enterprise Edition (Java EE) 应用程序的著名框架,现在在其模型-视图-控制器(Model-View-Controller ,MVC) ...

最新文章

  1. Linux命令 -- ps
  2. pyspark join代码示例
  3. [转] boost库的Singleton的实现以及static成员的初始化问题
  4. python简单代码需要写多久_python基本语法?初学Python要多久才能入门?
  5. python代码删掉了几行怎么撤回_仅78行代码实现微信撤回消息查看 | Python itchat
  6. WriteFile API简介
  7. 2017ICPC北京 J:Pangu and Stones(区间DP)
  8. ArcGIS API for Silverlight之配准JPG图片地图文字倾斜解决方案
  9. div在html中的好处,详解DIV+CSS布局的好处和意义
  10. c语言设计一个自动阅卷功能,基于WEB的C语言编程题自动阅卷系统的设计与实现...
  11. cms php 免费,十大免费PHP内容管理系统(CMS)
  12. 关于工作后定居城市的思考以及房价…
  13. USACO 2021 December Contest, Bronze
  14. 一尺、一英尺、一寸和一英寸分别等于多少厘米?
  15. 智安网络丨第一次听人把云计算讲这么明白!
  16. 韩国的计算机sci,JOURNAL OF KOREAN MEDICAL SCIENCE《韩国医学科学杂志》SCI论文投稿_SCI期刊大全_SCI期刊点评_万维书刊网...
  17. 网络爬虫(python项目)
  18. R语言学习 - Rstudio
  19. 爆肝!!! orcale 期末复习资料整理
  20. next和nextLine的使用

热门文章

  1. php 函数中静态变量的问题
  2. Java String 字符串
  3. 1.在VS2010中文版中开发WP7程序
  4. WCF 第十二章 对等网
  5. PdfSharp.dll 更改pdf 設置 如不能複製,列印等
  6. 三维重建学习(3):张正友相机标定推导
  7. 【机器学习入门笔记12:matplotlib绘图模块的使用】20190217
  8. Dubbo和Spring Cloud微服务架构的对比
  9. MyBatis的运行的核心原理解析(三)
  10. Cisco PT模拟实验(12) 路由器静态路由的配置