restful

Jersey RESTful Web服务

北城以北 提交于 2020-01-02 04:10:20
Jersey是一个RESTFUL请求服务JAVA框架,与常规的JAVA编程使用的struts框架类似,它主要用于处理业务逻辑层。与Struts类似,它同样可以和hibernate,spring框架整合。 由于Struts2+hibernate+spring整合在市场的占有率太高,所以很少一部分人去关注Jersey。所以网上有关于Jersey的介绍很少。但是它确实是一个非常不错的框架。对于请求式服务,对于GET,DELETE请求,你甚至只需要给出一个URI即可完成操作。 举个简单的例子:如果你想获得服务器数据库中的所有数据;那么你可以在浏览器或者利用Ajax的GET方法,将路径设置好;例如:localhost:8080/Student (项目名称) /studentinfo (项目服务总体前缀) /student( 处理student对象的签注 )/getStudentInfo( 最后前缀 )。这样就可以获取所有学生信息。你可以选择GET获取的数据的返回类型:JSON,XML,TEXT_HTML(String)..获取之后,你可以通过JS将这些数据塞到html或者jsp页面上。 下面是详解: web.xml的设置: <!--定义Jersey的拦截器 -->   <servlet>   <servlet-name>JerseyServlet</servlet-name>   

RESTful Web 服务:教程

女生的网名这么多〃 提交于 2020-01-02 04:08:56
RESTful Web 服务:教程 随着 REST 成为大多数 Web 和 Mobile 应用的默认选择,势必要对它的基本原理有所了解。 在它提出十多年后的今天,REST 已经成为最重要的 Web 应用技术之一。随着所有技术朝着 API 方向发展,它的重要性有可能持续快速地增长。每门主要编程语言现在已经包含构建 RESTful Web 服务的框架。同样地,Web 开发者和架构师对 REST 和 RESTful 服务有一个清晰的理解是很重要的。这篇教程解释了 REST 架构,然后研究使用它构建通用地基于API的任务的细节。 什么是 REST REST 代表表述性状态转移(representational state transfer),它是一种网络化超媒体应用的架构风格。它主要是用于构建轻量级的、可维护的、可伸缩的 Web 服务。基于 REST 的服务被称为 RESTful 服务。REST 不依赖于任何协议,但是几乎每个 RESTful 服务使用 HTTP 作为底层协议。 RESTful 使用HTTP post(创建、更新)数据、读取数据、删除数据。使用HTTP实现CRUD(创建、读取、更新、删除)操作。 RESTful 服务特点: 每个系统都使用资源。这些资源可以是图片,视频文件,网页,商业信息,或者在基于计算机的系统中可以被代表的任何事物

构建 RESTful Web 服务

↘锁芯ラ 提交于 2020-01-02 04:06:44
具象状态传输(Representational state transfer,REST)是设计基于命名资源而非消息的松耦合应用程序的一种风格。构建 RESTful 应用程序的最困难的部分在于确定要公开哪些资源。解决了这个问题之后,再使用开源 Restlet 框架构建 RESTful Web 服务就是小菜一碟了。本教程从 REST 的基本概念开始,逐步指导您使用 Restlet 框架构建应用程序。 在本教程中 REST 是一种思维方式,而非协议或标准。它是设计基于命名资源而非消息的松耦合应用程序 — 通常指面向 Web 的应用程序 — 的一种风格。在本教程中,您将了解到何为 REST 以及如何使用 Restlet(一个面向 Java™ 应用程序的轻量级框架)构建 RESTful 应用程序。 目标 本教程从 REST 的基本概念开始逐步指导您使用 Restlet 构建应用程序。您将学习如何: 定义 RESTful Web 服务 用 Restlet 框架实现它们 用 JUnit 测验框架验证它们 学完本教程后,您就会领会到使用 RESTful 原则进行设计的益处,了解到 Restlet 框架是如何轻松地实现它们的。 预备知识 为了更好地学习本教程,您需要熟悉 Java 语法以及 Java 平台中面向对象开发的基本概念。还要熟悉 Web 应用程序。熟悉 Groovy、Unit、DbUnit

RESTful Web服务的操作

你。 提交于 2020-01-02 04:02:48
1.首先我们说一下Http协议是无状态的 HTTP协议是无状态的,我们看到查到的用到的返回404,500,200,201,202,301.这些不是HTTP协议的状态码。 是HTTP的状态码,就是HTTP请求服务器返回的状态码。HTTP协议和HTTP请求返回状态码是二回事。 HTTP请求方法并不是只有GET和POST,只是最常用的。据RFC2616标准(现行的HTTP/1.1)得知,通常有以下8种方法:OPTIONS、GET、HEAD、POST、PUT、DELETE、TRACE和CONNECT。 HTTP请求方法并不是只有GET和POST,只是最常用的。据RFC2616标准(现行的HTTP/1.1)得知,通常有以下8种方法:OPTIONS、GET、HEAD、POST、PUT、DELETE、TRACE和CONNECT。 HTTP请求方法并不是只有GET和POST,只是最常用的。据RFC2616标准(现行的HTTP/1.1)得知,通常有以下8种方法:OPTIONS、GET、HEAD、POST、PUT、DELETE、TRACE和CONNECT。 重要的事情说三遍 2.现在比较流行的RSETful Web服务架构 关于REST及RESTful的概念,已有不少文章介绍,这里整理几篇我觉得不错的参考: 维基百科的定义: REST 什么是REST跟RESTful? REST理论的中文详述

RESTful API 最佳实践

萝らか妹 提交于 2020-01-02 02:16:08
RESTful是目前最流行的 API 设计规范,用于 Web 数据接口的设计。 它的大原则容易把握,但是细节不容易做对。本文总结 RESTful 的设计细节,介绍如何设计出易于理解和使用的 API。 一、URL 设计 1.1 动词 + 宾语 RESTful 的核心思想就是,客户端发出的数据操作指令都是"动词 + 宾语"的结构。 比如, GET /articles 这个命令, GET 是动词, /articles 是 宾语。 动词通常就是五种 HTTP 方法,对应 CRUD 操作。 GET :读取(Read) POST:新建(Create) PUT :更新(Update) PATCH:更新(Update),通常是部分更新 DELETE:删除(Delete) 根据 HTTP 规范,动词一律大写。 1.2 动词的覆盖 有些客户端只能使用 GET 和 POST 这两种方法。服务器必须接受 POST 模拟其他三个方法( PUT 、 PATCH 、 DELETE )。 这时,客户端发出的 HTTP 请求,要加上 X-HTTP-Method-Override 属性,告诉服务器应该使用哪一个动词,覆盖 POST 方法。 # X-HTTP-Method-Override指定本次请求的方法是PUT,而不是POST。 POST /api/Person/4 HTTP/1.1 X-HTTP-Method

什么是RESTful API

荒凉一梦 提交于 2020-01-02 02:15:17
REST,即Representational State Transfer的缩写。直接翻译的意思是"表现层状态转化"。 它是一种互联网应用程序的API设计理念:URL定位资源,用HTTP动词(GET,POST,DELETE,DETC)描述操作。 产生背景 近年来移动互联网的发展,前端设备层出不穷(手机、平板、桌面电脑、其他专用设备......),因此,必须有一种统一的机制,方便不同的前端设备与后端进行通信,于是RESTful诞生了,它可以通过一套统一的接口为 Web,iOS和Android提供服务。 图片.png URI 即统一资源标识符,服务器上每一种资源,比如文档、图像、视频片段、程序 都由一个通用资源标识符(Uniform Resource Identifier, 简称"URI")进行定位。 HTTP动词 常用的HTTP动词有下面五个 GET(SELECT):从服务器取出资源(一项或多项)。 POST(CREATE):在服务器新建一个资源。 PUT(UPDATE):在服务器更新资源(客户端提供改变后的完整资源)。 PATCH(UPDATE):在服务器更新资源(客户端提供改变的属性)。 DELETE(DELETE):从服务器删除资源。 RESTful架构 服务器上每一种资源,比如一个文件,一张图片,一部电影,都有对应的url地址,如果我们的客户端需要对服务器上的这个资源进行操作

Restful API 架构与设计参考原则

情到浓时终转凉″ 提交于 2020-01-02 02:14:47
1. 什么是REST REST全称是Representational State Transfer,中文意思是表述(编者注:通常译为表征)性状态转移。 它首次出现在2000年Roy Fielding的博士论文中,Roy Fielding是HTTP规范的主要编写者之一。 他在论文中提到:"我这篇文章的写作目的,就是想在符合架构原理的前提下,理解和评估以网络为基础的应用软件的架构设计,得到一个功能强、性能好、适宜通信的架构。REST指的是一组架构约束条件和原则。" 如果一个架构符合REST的约束条件和原则,我们就称它为RESTful架构。 REST本身并没有创造新的技术、组件或服务,而隐藏在RESTful背后的理念就是使用Web的现有特征和能力, 更好地使用现有Web标准中的一些准则和约束。虽然REST本身受Web技术的影响很深, 但是理论上REST架构风格并不是绑定在HTTP上,只不过目前HTTP是唯一与REST相关的实例。 所以我们这里描述的REST也是通过HTTP实现的REST。 什么是RESTful架构: 每一个URI代表一种资源; 客户端和服务器之间,传递这种资源的某种表现层; 客户端通过四个HTTP动词(GET/POST/PUT/DELETE),对服务器端资源进行操作,实现”表现层状态转化”。 URI 要让一个资源可以被识别,需要有个唯一标识

RESTFUL API

Deadly 提交于 2020-01-02 02:14:29
http://www.runoob.com/w3cnote/restful-architecture.html https://www.ibm.com/developerworks/cn/webservices/0907_rest_soap/ respresentational state transfer 表现层状态转移 REST 一种风格,符合这种风格的api就是RESTFUL API 具体包括 1 资源与 URI REST全称是表述性状态转移,那究竟指的是什么的表述? 其实指的就是资源。任何事物,只要有被引用到的必要,它就是一个资源。资源可以是实体(例如手机号码),也可以只是一个抽象概念(例如价值) 。下面是一些资源的例子: 某用户的手机号码 某用户的个人信息 最多用户订购的GPRS套餐 两个产品之间的依赖关系 某用户可以办理的优惠套餐 某手机号码的潜在价值 要让一个资源可以被识别,需要有个唯一标识,在Web中这个唯一标识就是URI(Uniform Resource Identifier)。 URI既可以看成是资源的地址,也可以看成是资源的名称。如果某些信息没有使用URI来表示,那它就不能算是一个资源, 只能算是资源的一些信息而已。URI的设计应该遵循可寻址性原则,具有自描述性,需要在形式上给人以直觉上的关联。这里以github网站为例,给出一些还算不错的URI: https

RESTful 架构

夙愿已清 提交于 2020-01-02 02:14:22
REST全称是Representational State Transfer, 意思是表述(表征)性状态转移.REST是一组架构约束条件和原则. REST本身并没有创造新的技术, 组件和服务, 而隐藏在RESTful背后的理念就是使用WEB的现有特征和能力, 更好的使用现有Web标准中的一些准则和约束. 分别从资源的定义, 获取, 表述, 关联, 状态变迁等角度   资源与URI   统一资源接口   资源的表述   资源的链接   状态的转移 资源与URI 任何事物, 只要有被引用到的必要, 他就是一个资源, 资源可以是实体, 也可以只是一个抽象概念.   - 某用户的手机号   - 某用户的个人信息   - 最多用户订购的GPRS套餐   - 两个产品之间的依赖关系   - 某手机号的潜在价值 要让一个资源可以识别, 需要有一个唯一标识符, 在Web中这个唯一标识就是URI(Uniform Resource Identifier) URI既可以看成资源的地址, 也可以看成是资源的名称. 如果某些信息没有使用URI来表示, 那他就是一个资源, 只能算是一些信息而已. URI的设计应该遵循可寻址性原则, 具有自描述性, 需要在形式上给人直觉上的关联. 增加_或-分隔符分割一些单词, 让URI看起来更人性化 使用/来表示资源的层级关系 使用?用来过滤 , 或 ;

Restful风格wcf调用3——Stream

风流意气都作罢 提交于 2020-01-02 02:11:53
写在前面 在前面的三篇文章,已经介绍了restful风格wcf,如何实现增删改查以及文件的上传下载操作。本篇文章将介绍一下,调用restful的权限认证的内容。在调用的接口,为了安全,总会需要对请求进行权限认证的。以防一些非法的操作。 系列文章 Restful风格wcf调用 Restful风格wcf调用2——增删改查 Restful风格wcf调用3——Stream 一个例子 在REST WCF中,我们可以利用 HttpHeader 来完成这一目标。 首先我们添加一个校验身份的一个方法。 /// <summary> /// 校验是否有权限访问 /// </summary> /// <returns></returns> private bool CheckIsCheckAuthorization() { //获得当前web操作上下文 WebOperationContext woc = WebOperationContext.Current; //获得当前请求头中的Authorization var auth = woc.IncomingRequest.Headers[System.Net.HttpRequestHeader.Authorization]; //如果auth为空,或者不等于admin/123,则响应405 MethodNotAllowed if (string