下面的swagger定义:
swagger: '2.0'
host: example.com
paths:
/theResource:
get:
parameters:
- $ref: '#/parameters/fields'
parameters:
fields:
name: fields
description: Fields to return
in: query
type: array
collectionFormat: multi
uniqueItems: true
items:
type: string
enum:
- column1
- column2
- column3
将生成以下URL,并且服务器将只接收等于column3
的fields
。
http://example.com/theResource?fields=column1&fields=column2&fields=column3
我如何改变它,使它在参数中发送一个数组?例如:
http://example.com/theResource?fields[]=column1&fields[]=column2&fields[]=column3
在PHP中,你可以使用http_build_query,它将为你构建正确的URL查询部分
<?php
$query = http_build_query([
'fields' => [
'one', 'two', 'three'
],
]);
$url = "https://example.com/?".$query;
是的,fields[]
语法应该可以做到这一点。