Rest架构风格
一、REST介绍::
1、REST是英文 Representational State Transfer的缩写 -- 表象化状态转变 或者 表述性状态转移
1.1 REST是 Web服务的一种架构风格
1.2 使用HTTP、URI等广泛流行的标准和协议
1.3 轻量化、跨平台、跨语言的架构设计
2、REST到底是什么??
REST是一种设计风格。它不是一种标准,也不是一种软件,而是一种思想。
REST通常基于使用HTTP,URI,和XML,JSON,以及HTML这些现有的广泛流行的协议和标准。
3、RESTful是什么??
RESTful对应的中文是REST式的
RESTful Web Service是一种常见的REST的应用,是遵守了REST风格的web服务
REST式的web服务是一种ROA(面向资源的架构)
二、Web service:两套标准
JAX-WS --- 平时使用的
JAX-RS --- restful

2 REST 架构的主要原则:
2.1 网络上的所有事物都可被抽象为资源(Resource)
2.2 每个资源都有一个唯一的资源标识符 (Resource ldentifier)
2.3 同一资源具有多种表现形式(xml、json等)
2.4 对资源的各种操作不会改变资源标识符
2.5 所有的操作都是无状态的(Stateless)
2.6 符合REST原则的架构方式即可称为 RESTful
3 URI和URL:
4、无状态性
4.1 无状态性使得客户端和服务器端不必保存对方的详细信息,服务器只需要处理当前Request,而不必了解前面 Request的历史。
4.2 从而可以更容易地释放资源
4.3 让服务器充分利用Pool技术来提高稳定性和性能
5、资源操作

6、REST 核心内容::

7、REST 接口定义

8、REST接口设计

9、响应设计
9.1 Content body 仅仅用来传输数据
9.2 数据要做到拿来就可用的原则,不需要拆箱的过程
9.3 用来描述数据或者请求的元数据放Header中,例如 X-Result-Fields
10、响应实例

11 、指定响应的属性字段

12、http响应状态码

Rest架构风格的更多相关文章
- REST 架构风格
目前基于网络应用的架构风格主要有三种: RPC架构风格 将服务器看作是由一些过程组成,客户端调用这些过程来执行特定的任务.SOAP就是RPC风格的一种架构.过程是动词性的(做某件事),因此RPC建 ...
- 理解本真的REST架构风格
http://kb.cnblogs.com/page/186516/ 引子 在移动互联网.云计算迅猛发展的今天,作为一名Web开发者,如果您还没听说过“REST”这个buzzword,显然已经落 ...
- 【DDD】领域驱动设计实践 —— 架构风格及架构实例
概述 DDD为复杂软件的设计提供了指导思想,其将易发生变化的业务核心域放置在限定上下文中,在确保核心域一致性和内聚性的基础上,DDD可以被多种语言和多种技术框架实现,具体的框架实现需要根据实际的业务场 ...
- [解读REST] 4.基于网络应用的架构风格
上篇文章介绍了一组自洽的术语来描述和解释软件架构:如何利用架构属性评估一个架构风格:以及对于基于网络的应用架构来说,那些架构属性是值得我们重点关注评估的.本篇在以上的基础上,列举一下一些常见的(RES ...
- (转载)RESTful架构风格下的4大常见安全问题
转载自<RESTful架构风格下的4大常见安全问题>,作者:马伟 伴随着RESTful架构风格的大量应用微服务架构的流行,一些本来难以察觉到的安全问题也逐渐开始显现出来.在我经历过的各种采 ...
- 2018(5)软件架构设计,架构风格,REST
2018上半年系统分析师试题五 阅读以下关于Web应用设计开发的描述,在答题纸上回答问题1至问题3. [说明] 某公司拟开发一个自由,可定制性强.用户界面友好的在线调查系统,以获取员工在课程学习.对公 ...
- 【转载】RESTful 架构风格概述
本文转载自https://blog.igevin.info/posts/restful-architecture-in-general/ 在移动互联网的大潮下,随着docker等技术的兴起,『微服务』 ...
- 【转载】理解本真的REST架构风格
本文将带您领略REST架构的起源.与Web的关系.REST架构的本质及特性,以及REST架构与其他架构风格之间的比较. 引子 在移动互联网.云计算迅猛发展的今天,作为一名Web开发者,如果您还没听说过 ...
- 架构-架构风格:REST
ylbtech-架构-架构风格:REST REST即表述性状态传递(英文:Representational State Transfer,简称REST)是Roy Fielding博士在2000年他的博 ...
- 基于Java的REST架构风格及接口安全性设计的讨论
1.REST即表现层状态传递(Representational [,rɛprɪzɛn'teʃnl] State Transfer,简称REST). (1)REST名词解释: 通俗来讲就是资源在网络中以 ...
随机推荐
- 替换空格(python)
题目描述 请实现一个函数,将一个字符串中的每个空格替换成“%20”.例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy. # -*- coding:ut ...
- Django之crm
crm注册 crm注册Form from django import forms from crm import models from django.core.exceptions import V ...
- Unity3D研究院之设置自动旋转屏幕默认旋转方向
如下图所示,在处理屏幕默认旋转方向的时候可以在这里进行选择,上下左右一共是4个方向. 策划的需求是游戏采用横屏,但是要求支持两个方向自动旋转,如下图所示,我的设置是这样的. Default Orien ...
- http://www.bugku.com:Bugku——jsfuckWEB5(http://120.24.86.145:8002/web5/index.php)
今天又做了bugku上面的一道题.使用到了jsfuck,它是什么捏? 它是Javascript原子化的一种简易表达方式,用[]()!+就可以表示所有的Javascript字符,不依赖于浏览器. ...
- QT各模块
基本模块: QT core QT gui QT widgets QT multimedia QT webkit 浏览器引擎 QT network QT sql QT test 单元测试 QT webv ...
- vue 调用第三方接口配置
1.配置proxyTable 3.调用接口,将接口地址替换为配置的‘/api’
- select-options and range
1.SELECT...WHERE ... IN ...,它后面跟着的是一个RANGE类型的内表,这种内表是通过RANGES或者SELECT-OPTIONS来定义的. 2.内表中包含四个字段:SIGN, ...
- [leetcode]449. Serialize and Deserialize BST序列化与反序列化BST
Serialization is the process of converting a data structure or object into a sequence of bits so tha ...
- php的常量
系统常量 __FILE__ 当前PHP文件的相对路径 __LINE__ 当前PHP文件中所在的行号 __FUNCTION__ 当前函数名,只对函数内调用起作用 __CLASS__ 当前类名,只对类起作 ...
- Android开发之自定义Toast(带详细注释)
因为工作需求,所以自己研究了自定义Toast,这里做出总结: 在此之前有一点需要提前说明:Toast与其他组件一样,都属于UI界面中的内容,因此在子线程中无法使用Toast弹出提示内容,如果强行在子线 ...