美文网首页
swagger 不能导出代码的错误

swagger 不能导出代码的错误

作者: Daniels_Cai | 来源:发表于2019-03-28 11:47 被阅读0次

问题描述

今天在导出swagger 的 client 代码时候,遇到一个报错

image.png

提示 there was an error generating the clients go code. please ensure that the definition and all external refs (inc. domains) are valid

这句报错非常模糊, 没有办法定位问题。

定位问题

因为之前是可以导出的,那么可以断定是我最近加的代码导致了报错,于是将最新的代码逐步删除,查看是否报错,最后定位到以下这段代码有问题。

  /user/login:
    get:
      tags: 
      - user
      summary: 用户登录
      operationId: userLogin
      description: 用户登录
      consumes:
      - application/json
      produces:
      - application/json
      parameters: 
      - in: body
        name: 用户登录
        schema:
          type: object
          required:
          - username
          - password
          properties:
            username:
              type: string
            password:
              type: string
      responses:
        200:
          description: 用户登录
          schema:
            $ref: '#/definitions/LoginResponse'
        400:
          description: bad input parameter

逐步缩小范围,定位出了parameter 这段有问题。

      parameters: 
      - in: body
        name: 用户登录
        schema:
          type: object
          required:
          - username
          - password
          properties:
            username:
              type: string
            password:
              type: string

这段代码非常少, 通过多次尝试,确定出 name: 用户登录 这段代码有问题。 将中文 用户登录改成 userlogin 英文之后问题解决。

问题分析

这应该是swagger的一个bug,通过逐渐删除新增的代码来定位问题的方法虽然低效,但是可行。

相关文章

网友评论

      本文标题:swagger 不能导出代码的错误

      本文链接:https://www.haomeiwen.com/subject/bifqbqtx.html