2017-02-14 11 views
0

Я использую (неофициальный) контейнер Docker для swagger-codegen-cli от https://hub.docker.com/r/jimschubert/swagger-codegen-cli/, который вытягивает swagger-codegen из ведущей ветки до его запуска. Я попытался захватить недавно задокументированный (официальный) swagger-codegen-cli от https://hub.docker.com/r/swaggerapi/swagger-codegen-cli/, но он пока недоступен.swagger-codegen - Как я могу предоставить тело сгенерированным C# SDK-методом?

Как она стоит с неофициальным кли, я сформировал C# SDK от развязности документации, который содержит следующее:

/api/customer/{zoneId}/files/cover/gallery: { 
    get: { 
     tags: [ 
      "FileUpload" 
     ], 
     summary: "Get all files in customer cover gallery", 
     operationId: "FileUpload_GetCustomerCoverFiles", 
     consumes: [ ], 
     produces: [ 
      "application/json", 
      "text/json" 
     ], 
     parameters: [ 
      { 
       name: "zoneId", 
       in: "path", 
       description: "", 
       required: true, 
       type: "integer", 
       format: "int32" 
      } 
     ], 
     responses: { 
      200: { 
       description: "OK", 
       schema: { 
        type: "array", 
        items: { 
         $ref: "#/definitions/FileUploadGalleryItemModel" 
        } 
       } 
      } 
     } 
    }, 
    post: { 
     tags: [ 
      "FileUpload" 
     ], 
     summary: "Upload file to customer cover gallery", 
     operationId: "FileUpload_CreateCustomerCoverGalleryItem", 
     consumes: [ 
      "application/octet-stream" 
     ], 
     produces: [ 
      "application/json", 
      "text/json" 
     ], 
     parameters: [ 
      { 
       name: "zoneId", 
       in: "path", 
       description: "", 
       required: true, 
       type: "integer", 
       format: "int32" 
      }, 
      { 
       name: "payload", 
       in: "body", 
       description: "", 
       required: true, 
       type: "byte[]", 
       format: "binary" 
      } 
     ], 
     responses: { 
      200: { 
       description: "OK", 
       schema: { 
        type: "array", 
        items: { 
         $ref: "#/definitions/FileUploadGalleryItemModel" 
        } 
       } 
      } 
     } 
    } 
}, 

«полезной нагрузку» обеспечивается в теле запроса, однако я не» t видеть какой-либо способ предоставить тело методу, сгенерированному в SDK, со следующей подписью: public List<FileUploadGalleryItemModel> FileUploadCreateCustomerCoverGalleryItem (int? zoneId).

Любые предложения о том, что я могу игнорировать или делать неправильно?

+2

Для 'payload', вы попытались задокументировать его как« файл » ? например https://github.com/swagger-api/swagger-codegen/blob/master/modules/swagger-codegen/src/test/resources/2_0/petstore.yaml#L269-L273 –

+0

Отлично! Благодаря! Продолжайте в том же духе! – YardGnomeNinja

+0

Np :) Примите мой ответ ниже. –

ответ

1

Вы можете сделать документ payload как файл (параметр формы), например, https://github.com/swagger-api/swagger-codegen/blob/master/modules/swagger-codegen/src/test/resources/2_0/petstore.yaml#L269-L273, и вы найдете образец кода в автогенерированной документации (пожалуйста, взгляните на автогенерированный README.md в качестве отправной точки)