什么是 RAML?

RAML,代表“RESTful API 建模语言”,是一种用于描述 RESTful API 的基于 YAML 的语言。它是开发 API 之前的蓝图​​,使开发人员和利益相关者更容易理解 API 的结构和行为.

什么是数据类型?

数据类型用于指定结构或客户端和服务器之间交换的数据类型。这允许验证请求和响应有效负载并维护有效负载标准。

内置数据类型

RAML 包括几种表示基本类型值的内置或原始数据类型。一些常见的内置数据类型包括:

  • 字符串表示文本数据。
  • 数字代表数值。
  • 整数代表整数。
  • 布尔值表示 true 或 false 值。
  • 仅日期:表示不带时间部分的日期。
  • 仅时间:表示不带日期部分的时间。
  • DateTime:表示日期和时间。

用户定义的数据类型

您还可以在 RAML 中定义自定义或用户定义的数据类型。这些类型可以具有其自己的数据类型的特定属性。这使您可以为 API 创建结构化且可重用的组件。

用例

使用具有不同数据类型和格式的单一资源创建 RAML,并将其发布到 Exchange 上。

目标

  • 创建 RAML 规范。
  • 创建数据类型文件。
  • 创建资源/用户并添加所需信息。
  • 使用模拟服务验证端点。
  • 发布到 Exchange。

第 1 步:创建 RAML 规范

  • 在 Anypoint 平台上创建帐户。
  • 导航至设计中心并创建 RAML 规范。
  • 为您的规范指定一个适当的名称。

第 2 步:创建数据类型文件

  • 在文件部分创建一个文件夹“dataTypes”。
  • 创建文件夹 dataTypes 并添加请求和响应数据类型,如下所示。
    • jsonDataTypeOne
    • jsonDataTypeTwo
    • xml数据类型
    • 响应数据类型

设计中心

jsonDataTypeOne

纯文本

 

#%RAML 1.0 数据类型

类型:对象
特性:
 姓名:
   类型:字符串
   例如:“卡罗琳”
 年龄:
   类型:数字
   示例:22
 积极的:
   类型:布尔值
   示例:真实

jsonDataTypeTwo

纯文本

 

#%RAML 1.0 数据类型


类型:对象
特性:
 姓名:
   类型:字符串
   例如:“卡罗琳”
 年龄:
   类型:数字
   示例:22
 地址:
   类型:字符串
   例如:“145 Main St,达拉斯,德克萨斯州”

xmlDataType

纯文本

 

#%RAML 1.0 数据类型

类型:对象
特性:
 信息:
   类型:字符串
   例如:“成功”
 有效负载:
   类型:对象
示例:{}

第 3 步:创建资源/用户

下面是 RAML 规范示例。

纯文本

 

#%RAML 1.0
标题:测试

类型:
 jsonTypeOne: !include dataTypes/jsonDataTypeOne.raml
 jsonTypeTwo: !include dataTypes/jsonDataTypeTwo.raml
 xmlType: !include dataTypes/xmlDataType.raml
 响应类型:!include dataTypes/responseDataType.raml

/用户:
 邮政:
   身体:
     应用程序/json:
       类型:jsonTypeOne | json类型二
     应用程序/xml:
       类型:xml类型
   回应:
     200:
       身体:
         应用程序/json:
类型:响应类型

在上述 RAML 规范中,“|”符号用在主体类型中,这意味着它可以接受 jsonTypeOne 或 jsonTypeTwo。除此之外我们还可以发送 xmlType。

第 4 步:使用模拟服务验证端点

documentation

在上图中,我们可以看到它同时接受 json 类型和 xml 类型。它还允许用户在 jsonTypeOne 或 jsonTypeTwo 之间进行选择。

第 5 步:发布到 Exchange
publish to Exchange

RAML 规范准备就绪并使用模拟服务进行验证后,您可以将该规范发布到 Anypoint Exchange。发布到 Exchange 将使您的用户能够在开始实施之前验证端点。

摘要

综上所述,单个资源可以有不同的数据类型和不同的格式,用户可以根据自己的需求实现。

Comments are closed.