原创文章转载请注明出处:@协思, http://zeeman.cnblogs.com
 
RAML是什么?
 
RAML是一种简洁的RESTful API描述性语言,它基于 YAML和JSON这样的公开标准构建。通过RAML定义,可以生成客户端调用代码和服务端代码结构,创建API说明文档。
 
我们知道Web Service有相应的WSDL来描述它相应的Schema,WSDL就相当于对当前的服务做了一个描述,Client端可以据此生成相应的Proxy代码, 因此WSDL可以帮助Client更容易的消费服务。
 
对于RESTful API,却没有相应的“REST WSDL”,在这种情况下,RAML应运而生,它可以对我们的API做完整的描述,不管是对人或者是机器,都能以相对友好的方式使用。
 
RAML能帮助我们做什么?
 
RAML可以帮助你组织:
 
1.基本信息。描述RESTful API的关键点,比如名字、标题、路径等。
 
2.用户文档。描述技术支持性文档帮助用户更方便的消费API,通过文档生成器创建PDF或者HTML。
 
3.资源。描述如何规范RESTful资源,资源的方法和Schema,以及资源之间的交互。
怎样使用RAML设计API?
 
目前已经支持关键字自动提示,自动完成,语法错误检测,实时预览,功能相对完善,程序员使用起来很容易上手。
 
RAML设计器和解析器都是github的开源项目,我们可以将他们集成到自己的产品中。
 
前文看到的文档就是利用RAML解析器生成的,它是一个压缩后大约240k的Javascript文件,可以加载到浏览器或者Node.js中运行,利用解析器可以Load指定的RAML文件生成HTML文档。
 
RAML相关的工具和资源在哪里?
 
官方网站:http://raml.org 
规范文档:http://raml.org/spec.html
设计器:https://github.com/mulesoft/api-designer
解析器:https://github.com/raml-org/raml-js-parser 

REST建模语言RAML介绍的更多相关文章

  1. 统一建模语言UML---类图

    什么是统一建模语言,来看看百科中的介绍统一建模语言(Unified Modeling Language,UML)是一种为面向对象系统的产品进行说明.可视化和编制文档的一种标准语言,是非专利的第三代建模 ...

  2. Velocity语言的介绍

    Velocity语言的介绍 2016-09-06 15:39:25 语言介绍 Velocity是一种Java模版引擎技术,是一个基于Java的模板引擎(template engine).她允许任何人简 ...

  3. Atitit.软件的建模种类and 建模语言选型and UML???

    Atitit.软件的建模种类and  建模语言选型and UML??? 1. 4大的建模种类:ui建模,业务流程建模 , 业务对象建模, 数据库建模 1 2. 文本还是图片化(推荐)的建模 1 3.  ...

  4. 【个人笔记】002-PHP基础-01-PHP快速入门-02-PHP语言相关介绍输

    002-PHP基础-01-PHP快速入门 02-PHP语言相关介绍 1.PHP是什么 Hypertext Preprocessor超文本预处理器 是一种通用开源脚本语言 Personal Home P ...

  5. UML2.0统一建模语言

      Unified Modeling Language (UML)又称统一建模语言或标准建模语言,是支持模型化和软件系统开发的图形化语言,为软件开发的所有阶段提供模型化和可视化支持,包括由需求分析到规 ...

  6. 技术人应该学习的行话--UML统一建模语言

    新生代码农如何在硝烟弥漫的商业丛林中生存和崛起? 洞见,让一部分先遇见未来. 最近公司技术部在组织架构师培训,有幸参与.导师老刘特别推荐了UML语言的学习.回想多年来,自己习惯做一些流程图,框图或者所 ...

  7. UML标准建模语言与应用实例

    一.基本信息 标题:UML标准建模语言与应用实例 时间:2012 出版源:科技创新导报 领域分类:UML标准建模语言 面向对象 系统分析与设计 二.研究背景 问题定义:UML建模语言用图形来表现典型的 ...

  8. 面向对象基础及UML建模语言

    1.面向对象的方法起源于面向对象程序设计语言,其发展过程大体经历了初始阶段.发展阶段和成熟阶段. 2.面向对象方法主要优点 (1)从认识论的角度可以看出,面向对象方法改变了开发软件的方式. (2)面向 ...

  9. UML(统一建模语言)是通用的可视化标准建模语言。由构造块、公共机制、构架三部分组成。

    UML UML(统一建模语言)是通用的可视化标准建模语言.由构造块.公共机制.构架三部分组成. 1.构造块:包括基本的UML建模元素(类.接口.用例等).关系(关联关系.依赖关系.泛化关系.实现关系) ...

随机推荐

  1. Masonry记录——iOS适配

    Masonry是iOS适配的第三方库,比较好用的一个,本人用的也不多,简单了解一些常用的方法,自己学习中,记录下来共勉. Masonry下载地址:https://github.com/SnapKit/ ...

  2. Linux的学习之路

    linux的安装配置.常用命令: 基本上学习任务: 1.在VMware(9)虚拟机上安装Linux操作系统(安装CentOs操作系统) 2.了解Linux操作系统 3.通过XShell工具操作Linu ...

  3. android6.0锁屏界面接收新通知处理流程

    灭屏状态下,接收新信息,屏幕会半亮显示通知流程: 1,应用构造notification后,传给NotificationManager,而后进入NotificationManagerService处理. ...

  4. apache和nginx开启https

    1.安装mod_ssl和openssl yum -y install mod_ssl openssl 2.建立服务器密钥 mkdir /etc/httpd/conf.d/ssl.key/ cd /et ...

  5. [转]SQL Server字符串处理函数大全

    select语句中只能使用sql函数对字段进行操作(链接sql server), select 字段1 from 表1 where 字段1.IndexOf("云")=1;这条语句不 ...

  6. Lnux 16.04 VM下安装与汉化

    参考linux-公社: http://www.linuxidc.com/Linux/2016-04/130520.htm  U盘安装linux16.04 http://www.linuxidc.com ...

  7. ArcGIS Engine10.2如何安装在 VisualStudio2013 开发环境下

    所谓工欲善其事必先利其器,10.2中的ArcObject SDK for Microsoft .Net Framework只能支持VS2010和VS2012环境. 那么如何在VS2013下安装呢? 准 ...

  8. Ubuntu下设置(增加/删除)开机启动项

    As said above, you have to edit /etc/xdg/autostart/ and either: remove the NoDisplay=true lines; or ...

  9. Delphi 版 MIB_IF_ROW2

    unit netioapi; interface uses Windows; type {$Z4} NDIS_MEDIUM = ( NdisMedium802_3, NdisMedium802_5, ...

  10. 数据库、数据表的创建SP2

      本人前一个版本的数据库.数据表的创建由于不是很详细,于是通过细心的修订,已经修复了很多Bug,希望这篇文章能够给大家一些帮助 --代表注释,相当于C#里的// --切换到master数据库,目的是 ...