api-platform / api-platform/core

Array query parameters not correctly handled by OpenAPI UI

Offen
#8,421 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
PHP
Sterne
2.6k
Forks
980
Ø Merge
2 T. 5 Std.
Gemergte PRs (30 T.)
48

Beschreibung

**Description**

When setting a Query Parameter of array type, the OpenAPI UI allows setting multiple values but makes a wrong setup of the actual query parameters (no `[]` added).

Alternatively, is there a simple way to configure the parsing from Laravel/Symfony to access all provided values? It seems a lot of this is framework and language specific, as other languages support multiple query param with same name as is implemented here.

**How to reproduce**

```
#[ApiResource(
shortName: 'Test',
operations: [
new Get(
parameters: [
'array' => new QueryParameter(required: false, castToArray: true, schema: ['type' => 'array']),
],
),
],
)]
class Test2Resource
{
public int $not_id;
}

```

Image

**Possible Solution**

```

curl -X 'GET' \
'http://localhost/fork/public/api/tests?array=2&array=1&array=4' \
-H 'accept: application/ld+json'

```

should be
```

curl -X 'GET' \
'http://localhost/fork/public/api/tests?array[]=2&array[]=1&array[]=4' \
-H 'accept: application/ld+json')

```

Beitragsleitfaden

Beitragsleitfaden öffnen

Bewertung

Dieses Issue wurde noch nicht bewertet.

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.