api-platform / api-platform/core

Content Type header has side effects on POST requests

Aberta
#8,058 1 comentário 0 reações 0 responsáveis Ver no GitHub
doctrine Serializer
Linguagem predominante
PHP
Estrelas
2.6k
Forks
980
Merge médio
2d 2h
PRs com merge (30d)
51

Descrição

**Description**
I'm trying to POST a resource with id generated by the client (uuid). Doing so fails with [Content-Type: application/json] but works with [Content-Type: application/ld+json]

**How to reproduce**
Using Api Platform v3.0 with the following entity:

```php
'place:write'])
])]
class Place
{
#[ORM\Id]
#[ORM\Column(length: 255)]
#[Groups(['place:write'])]
private string $id;

...

public function __construct(string $id)
{
$this->id = $id;
}

public function getId(): string
{
return $this->id;
}

...
}

```

Curl request that works:
```
curl -kX 'POST' \
'https://localhost/places' \
-H 'accept: application/json' \
-H 'Content-Type: application/ld+json' \
-d '{"id": "0b450e16-6260-4502-9313-feff93b20d18","stuff": "abd"}'
```

Curl request that fails:
```
curl -kX 'POST' \
'https://localhost/places' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-d '{"id": "0b450e16-6260-4502-9313-feff93b20d18","stuff": "abd"}'
```

**Possible Solution**
Setting "Content-Type" from client accordingly is a temporary fix, but IMHO switching for application/json should not fail.

Guia de contribuição

Abrir o guia de contribuição

Avaliação

Esta issue ainda não foi avaliada.

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.