【问题标题】:How to give Generic return type in swagger yaml for Swagger dode generation?如何在 swagger yaml 中为 Swagger dode 生成提供通用返回类型?
【发布时间】:2020-02-13 19:27:04
【问题描述】:

如果 GetPaymentRepsonse 和 AuthenticationException 对于通过 swaggercodegen 生成的相同休息方法失败,我必须返回。

我有一个类似的解决方案

default ResponseEntity<?> getPayment(String id,
      String agent,
      String contact,
      String token) {

    return new ResponseEntity<PaymentResponse>(HttpStatus.OK);
  }
@Override public ResponseEntity<?> getPayment(String id, String agent, String contact, String token) {

    try {
          ........
           ..........
         return paymentReposne;
      } else {
        throw new AuthenticationException(Enum.SomeException);
      }

    } catch (AuthenticationException | IOException | TokenServiceException e) {
      return UtilClass.someCustomAuthenticationException(e);
    }
  }

招摇设计

/v2.0/.../.../....:
    get:
      operationId: getPayment
      tags:
        - something
      description:
        xxx xxx xxx xxxx 
      parameters:
        - $ref: "#/parameters/token"
        - $ref: "#/parameters/id"
        - $ref: "#/parameters/agent"
        - $ref: "#/parameters/contact"

      responses:
        '200':
          description: 'Successful response'
          schema:
            type: object --->Here i want to give Generic type or ? to support my above code on swagger code generation
        '400':
          description:  'Bad request parameters'

【问题讨论】:

    标签: java yaml swagger


    【解决方案1】:

    您可以执行以下操作:-

    get:
      operationId: getPayment
      tags:
        - something
      description:
        xxx xxx xxx xxxx 
      parameters:
        - $ref: "#/parameters/token"
        - $ref: "#/parameters/id"
        - $ref: "#/parameters/agent"
        - $ref: "#/parameters/contact"
    
      responses:
                '200':
                    description: Fetched Successfully
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/ResponseEntity'
                '400':
                    $ref: '#/components/responses/AuthenticationException'
    
    components:
      schemas:
          ErrorResponse:
            type: object
            properties:
                statusCode:
                    type: integer
                    example: 400
                message:
                    type: string
    
      responses:
        AuthenticationException:
            description: The specified resource was not found
            content:
                application/json:
                    schema:
                        $ref: '#/components/schemas/ErrorResponse'
    

    【讨论】:

      猜你喜欢
      • 2018-03-18
      • 2020-10-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-10-23
      • 2016-04-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多