使用 RAML 在 HTTP 请求中发送多个文件

Send multiple files in HTTP request using RAML

我正在使用 RAML 编写 HTTP POST 请求,需要编写它才能在请求中发送多个文件。每次文件的数量可能不同,因此需要它是动态的。我该怎么做?

这最终将与 Anypoint Studio 6.2 和 Mule 3.8.3 一起使用

谢谢

如果您使用的是 RAML 版本 0.8,请尝试下面 construct.It 有 repeat 属性 指定多次上传的可能性

#%RAML 0.8
title: FileUploadExample
baseUri: localhost
/uploadMultipleFile:
  description: Uploads Multiple file 
  post:
    body:
        multipart/form-data:
         formParameters:
             file:
               description: The file to be uploaded. Supported Formats are gif, jpeg, jpg, png etc.
               required: true
               type: file
               repeat: true

如果您使用的是 RAML 1.0 版 由于 repeatRAML 0.8 规范 中,它在 RAML 1.0 中被删除以支持 RAML 数据 类型抽象. 所以对于 RAML 1.0,你可以使用类似于下面的构造。

#%RAML 1.0
title: FileUploadExample
baseUri: localhost
types:
  MultiUploadFileType:
       properties:
          file:
            description: The file to be uploaded. Supported Formats are gif, jpeg, jpg, png etc.
            required: true
            type: file

/uploadMultipleFile:
  description: Uploads Multiple file
  post:
    body:
      multipart/form-data:
        type: MultiUploadFileType[]
        minItems: 1

在这里,我们使用类型抽象来定义一个类型,然后将其作为数组与multipart/form-data

一起使用