微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

查询中的索引数组

如何解决查询中的索引数组

我正在努力为一个字段编写参数注释,该字段必须作为整数索引数组:

to_char(VLUTN_START_DTM,'yyyy-mm-dd hh:mi.ss.ff7 "(GMT-04:00)"')

我尝试了以下

voucher_products[0]: 23
voucher_products[1]: 102
voucher_products[2]: 233

我是这样填写表格的: form

我在查询字符串参数中得到的结果是

 *     @OA\Parameter(
 *         name="voucher_products",*         in="query",*         description="",*         required=false,*         @OA\Schema(
 *             type="array",*               @OA\Items(
 *                 type="integer",*               )
 *         )
 *     ),

如果我在 $_POST 中检查这个字段,它的最终值是 voucher_products: 23 voucher_products: 102 voucher_products: 233 ,因为它不会变成一个数组。

我做错了什么?

解决方法

OpenAPI 规范目前无法表示包含索引数组的查询字符串,例如

?arr[0]=val1&arr[1]=val2&arr[2]=val3&...

以下是 OpenAPI 规范存储库中的相关问题:
Are indexes in the query parameter array representable?
Support deep objects for query parameters with deepObject style


但是,如果您的 API 可以接受只有方括号但没有索引的数组

?voucher_products[]=23&voucher_products[]=102&voucher_products[]=233

然后您可以使用 name="voucher_products[]" 将其定义为参数。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。