在 Swagger 属性 (OAS3) 中设置带有 id 的数组示例
Set example of array with ids in Swagger Property (OAS3)
我试图在 swagger (OAS3) 中指定以下 requestBody:
{
"first_name": "John",
"last_name": "Doe",
"email": "user@example.com",
"interest_ids": [
1,2
]
}
我目前指定的requestBody如下:
* @OA\RequestBody(
* required=true,
* @OA\JsonContent(
* required={"email"},
* @OA\Property(property="first_name", type="string", format="string", example="John"),
* @OA\Property(property="last_name", type="string", format="string", example="Doe"),
* @OA\Property(property="email", type="string", format="email", example="user@example.com"),
* @OA\Property(property="interest_ids", type="array", @OA\Items(
* type="integer",
* example=3
* ),
* ),
* ),
* ),
这给了我一个正确的 requestBody,但是这显然只给了我一个值为 3
的键作为 interest_ids
数组的示例值。如何在不将类型设置为字符串的情况下指定多个 ID?我尝试了多种解决方案,例如将示例设置为 example={1,2}
,不幸的是,这给了我 interest_ids
数组中的另一个数组:
{
"first_name": "John",
"last_name": "Doe",
"email": "user@example.com",
"interest_ids": [
[
1,
2
]
]
}
我也试过将 属性 类型的 collectionFormat
设置为不同的值,但这也没有帮助。
您是否尝试将示例从 @OA\Items
移至 属性?
现在的例子是数组的单个值的例子
我想你想要的是 interest_ids
本身的例子。
* @OA\Property(property="interest_ids", type="array",
* example={3, 4},
* @OA\Items(
* type="integer"
* )
* )
我试图在 swagger (OAS3) 中指定以下 requestBody:
{
"first_name": "John",
"last_name": "Doe",
"email": "user@example.com",
"interest_ids": [
1,2
]
}
我目前指定的requestBody如下:
* @OA\RequestBody(
* required=true,
* @OA\JsonContent(
* required={"email"},
* @OA\Property(property="first_name", type="string", format="string", example="John"),
* @OA\Property(property="last_name", type="string", format="string", example="Doe"),
* @OA\Property(property="email", type="string", format="email", example="user@example.com"),
* @OA\Property(property="interest_ids", type="array", @OA\Items(
* type="integer",
* example=3
* ),
* ),
* ),
* ),
这给了我一个正确的 requestBody,但是这显然只给了我一个值为 3
的键作为 interest_ids
数组的示例值。如何在不将类型设置为字符串的情况下指定多个 ID?我尝试了多种解决方案,例如将示例设置为 example={1,2}
,不幸的是,这给了我 interest_ids
数组中的另一个数组:
{
"first_name": "John",
"last_name": "Doe",
"email": "user@example.com",
"interest_ids": [
[
1,
2
]
]
}
我也试过将 属性 类型的 collectionFormat
设置为不同的值,但这也没有帮助。
您是否尝试将示例从 @OA\Items
移至 属性?
现在的例子是数组的单个值的例子
我想你想要的是 interest_ids
本身的例子。
* @OA\Property(property="interest_ids", type="array",
* example={3, 4},
* @OA\Items(
* type="integer"
* )
* )