标签: raml

Java Map的RAML 1.0表示

我有RAML架构,其中包含 "javaType": "java.util.Map<String, java.util.List<Employee>>"

我有单独的架构(employee.schema)可用,它代表类Employee.

但是因为我没有在raml中使用employee.schema所以它不会生成类Employee并在将RAML转换为Java时抛出错误.

{
  "$schema": "http://json-schema.org/schema#",
  "type": "object",
  "description": "Desc",
  "properties": {
    "employeeGroups": {
      "type": "object",
      "javaType": "java.util.Map<String, java.util.List<Employee>>"
    }
  },
  "additionalProperties": false
}
Run Code Online (Sandbox Code Playgroud)

任何人都可以分享评论如何"javaType": "java.util.Map<String, java.util.List<Employee>>"在RAML中表示吗?

RAML Version: 1.0
Run Code Online (Sandbox Code Playgroud)

java raml raml-java-parser raml-1.0

17
推荐指数
1
解决办法
373
查看次数

将Swagger JSON转换为RAML/YAML

如何将Swagger JSON转换为RAML/YAML并进行验证?我不是在寻找一种程序化的方式,只需要一次转换.

api json yaml swagger raml

16
推荐指数
3
解决办法
3万
查看次数

良好的休息代码生成和文档工具

我一直在考虑一个文档工具,用于构建Web服务的后端,以便在多个客户端中使用OAuth以及多次修订的可能性.我已经知道了蜂房,但做了一些研究,我找到了其他相当好的解决方案,并且有利可图的承诺.

RAML似乎承诺良好的代码生成和api可重用性.但它似乎无法创建模拟服务器.我无法理解为什么apiblueprint不能用于生成REST API的客户端库和服务器端框架.

对我们来说最好的用例是基于api的文档,用于消费服务的客户端iOS/Android/wp/js库可以与节点快速/解析应用程序一起自动生成,该应用程序提供编写代码的框架.随着api测试和负载测试.

RAML/Swagger/Apiary中的哪种解决方案最适合这种情况?

rest swagger apiblueprint raml

15
推荐指数
3
解决办法
1万
查看次数

如何使用RAML使用OAuth2描述API

我想使用RAML来描述使用OAuth2的API

有没有人有一个解决方案或示例我可以用来与我自己的RAML进行比较?

api rest oauth-2.0 raml

13
推荐指数
1
解决办法
7157
查看次数

是否有一个Raml 1.0(不是0.8)HTML生成器?

有人知道是否有raml2html到Raml 1.0的版本?我发现只有Raml 0.8的工具,比如raml2htmlraml2md,但不适用于Raml 1.0.

api documentation node.js raml

12
推荐指数
1
解决办法
2843
查看次数

如何在RAML 1.0中覆盖对象数组属性类型

我有一个通用的Java类型,如下所示:

class Response<D> {
  List<D> data;
}
Run Code Online (Sandbox Code Playgroud)

并希望创建类似于RAML 1.0(我是新手)的东西.

我的第一个方法是

types:
  Response:
    type: object
    properties:
      data: object[]
Run Code Online (Sandbox Code Playgroud)

并在使用它时

body:
  type: Response
    properties:
      data: MyDataType[]
Run Code Online (Sandbox Code Playgroud)

从API-Workbench我总是得到"从Response继承的非法覆盖属性数据".

另一个想法是使用repeat:

types:
  Response:
    type: object
    properties:
      data: object
      repeat: true
Run Code Online (Sandbox Code Playgroud)

和分别

body:
  type: Response
    properties:
      data: MyDataType
      repeat: true
Run Code Online (Sandbox Code Playgroud)

现在非法覆盖已经消失,但在API-Console中我现在得到一个"Uncaught TypeError".

怎么解决?或者我需要一种完全不同的方法?任何的想法?

java generics raml

10
推荐指数
1
解决办法
915
查看次数

RAML2HTML模板库

我们最近决定使用RAML来记录我们的API,到目前为止看起来都很棒.

我们使用raml2html实用程序生成静态HTML文档.默认模板效果很好,但我看到了更好的API页面.有谁知道一些示例/即用型模板的集合?

templates api-doc raml

9
推荐指数
0
解决办法
1891
查看次数

RAML有eclipse插件吗?

我想在Eclipse上编辑RAML.我没有找到RAML的任何Eclipse插件.

在RAML网站(http://raml.org/projects.html)上只有Sublime.

你知道在Eclipse上编写RAML的经验吗?

eclipse-plugin raml

8
推荐指数
1
解决办法
5262
查看次数

RAML中示例json的动态填充

我很喜欢在声明resourceType时RAML如何动态引用不同的模式:

resourceTypes:
  - collection:
      get:
        responses:
          200:
            body:
              application/json:
                schema: <<schema>>
      post:
        body:
          application/json:
            schema: <<schema>>Create
        responses:
          200:
            body:
              application/json:
                schema: <<schema>>
Run Code Online (Sandbox Code Playgroud)

在这里,我可以使用这个

/users:
  type: { collection: { schema: user } }
Run Code Online (Sandbox Code Playgroud)

和RAML将给我userGET和POST的架构响应,并使用userCreate架构发送POST请求.凉!现在我可以使用大量不同的模式重用我的集合定义.

但是现在我想要为所有内容提供示例json,我希望以<<schema>>另一种方式利用var来利用"代码重用".我希望能够做到

resourceTypes:
  - collection:
      get:
        responses:
          200:
            body:
              application/json:
                schema: <<schema>>
                example: examples/v1-<<schema>>.json
      post:
        body:
          application/json:
            schema: <<schema>>Create
            example: examples/v1-<<schema>>-create.json
        responses:
          200:
            body:
              application/json:
                schema: <<schema>>
                example: examples/v1-<<schema>>.json
Run Code Online (Sandbox Code Playgroud)

但不幸的是,这不起作用.我收到一个错误说

error: File with path "/examples/v1-%3C%3Cschema%3E%3E.json" does not exist
Run Code Online (Sandbox Code Playgroud)

所以现在我已经使用手动将它添加到我的所有集合中,/users上面的例子已成为

/users: …
Run Code Online (Sandbox Code Playgroud)

raml

8
推荐指数
1
解决办法
2976
查看次数

RAML定义可重用的子路由

我们的api将有一个可重用的子/posts路由,适用于不同的顶级路由.

例如:

/me/posts 
/users/{user-id}/posts
... 
Run Code Online (Sandbox Code Playgroud)

帖子示例:

/posts 
    /{post-id}
        /likes 
        /comments 
            /{comment-id}
... 
Run Code Online (Sandbox Code Playgroud)

帖子也有固定的子路由,参数等.
使用RAML定义这种默认的可重用子路由的标准方法是什么?

当然,人们可以决定改变它并创建/ post端点,但我不认为应该根据RAML功能更改API定义.此外,如果我想要,我应该能够有多个指向同一资源的端点.

如果您有答案,请根据要求分享一个例子.

rest raml

8
推荐指数
1
解决办法
194
查看次数