当前位置: 首页 > 知识库问答 >
问题:

如何在Swagger PHP中指定默认的JSON主体?

苏浩瀚
2023-03-14

我想在Swagger-PHP中为POST请求指定默认的JSON正文。我的注释如下所示:

/**
 * Setup order
 *
 * @SWG\Post(
 *      path="/order/setup",
 *      operationId="setupOrder",
 *      tags={"Orders"},
 *      summary="Setup an order with status draft.",
 *      description="Setup an order with status draft",
 *      consumes={"application/json"},
 *      @SWG\Parameter(
 *          name="body",
 *          in="body",
 *          default="{}",
 *          description="Json order info body (customer and products info)",
 *          required=true,
 *          @SWG\Schema(type="string")
 *      ),
 *      @SWG\Response(
 *          response=200,
 *          description="successful operation"
 *       ),
 *       @SWG\Response(response=400, description="Bad request"),
 *       security={
 *           {"api_key_security_example": {}}
 *       }
 *     )
 *
 */

如您所见,我正试图使用<code>default={}实现默认值,但Swagger UI忽略此值,并将‘string’作为默认值:

如何将“字符串”部分更改为默认的JSON对象?

共有2个答案

宰父淳
2023-03-14

可以用下面的like。

/**
 * Setup order
 * @SWG\Post(
 *      path="/order/setup",
 *      operationId="setupOrder",
 *      tags={"Orders"},
 *      summary="Setup an order with status draft.",
 *      description="Setup an order with status draft",
 *      consumes={"application/json"},
 *      @SWG\Parameter(
 *          name="body",
 *          in="body",
 *          default="{}",
 *          description="Json order info body (customer and products info)",
 *          required=true,
 *          @SWG\Schema(ref="#/definitions/testDefinitions")
 *      ),
 *      @SWG\Response(
 *          response=200,
 *          description="successful operation"
 *       ),
 *       @SWG\Response(response=400, description="Bad request"),
 *       security={
 *           {"api_key_security_example": {}}
 *       }
 *     )
 *  @SWG\Definition(
 *      definition="PlanResponse",
 *      example={
 *         "type":"string"
 *      }
 *     )
 */

谢谢

吴山
2023-03-14

通过修改您的< code>@SWG\Parameter(),您可以达到预期的效果。

示例(查看属性的示例):

 *   @SWG\Parameter(
 *     name="body",
 *     in="body",
 *     description="User email used to create account.",
 *     required=true,
 *     @SWG\Schema(@SWG\Property(property="email", type="string", example="email@example.com")),
 *   )
 类似资料:
  • 问题内容: 我想解析Go中的JSON对象,但想为未指定的字段指定默认值。例如,我具有struct类型: A,B和C的默认值分别是“ a”,“ b”和“ c”。这意味着当我解析json时: 我想得到的结构: 使用内置包可以吗?否则,是否有任何具有此功能的Go库? 问题答案: 使用encoding / json可以实现:调用时,不需要给它一个空结构,可以给它一个默认值。 例如: 在Go操场上运行此示例

  • 问题内容: 当用户遇到某些错误(例如,代码为404的错误)时,我正在使用web.xml中的 元素来指定友好错误页面: 但是,我希望如果用户不符合中指定的任何错误代码 ,则他或她应该看到默认错误页面。我该如何使用web.xml中的元素呢? 问题答案: 在Servlet 3.0或更高版本上,你只需指定 但是,由于你仍在使用Servlet 2.5,因此别无选择,只能单独指定每个常见的HTTP错误。你需要

  • 问题内容: 我在同一包中有2个班级。这两个类都具有main方法。现在,我想构建一个jar文件。我想建立2个jar文件,这些文件使用不同的主要功能作为默认主要功能。 例如 如何在NetBeans IDE中进行操作? 我找到了答案。您可以在netbeans中轻松地做到这一点:1)右键单击项目>属性>运行>选择类frm并下拉列表。在netbeans中是如此简单。Netbeans摇摇欲坠! 问题答案: 在

  • 我有简单的对象客户端