Api-платформа IriConverter Symfony контекст - PullRequest
0 голосов
/ 28 января 2019

Мой сервис (консольная команда) получает строки IRI в качестве аргументов (у меня есть это требование, вместо использования идентификаторов, что было бы намного проще).Поэтому я внедрил IriConverter ApiPlatform в свой сервис, но когда я вызываю его метод getItemFromIri, я получаю эту ошибку:

Хранилище токенов не содержит токена аутентификации.Одной из возможных причин может быть то, что для этого URL не настроен брандмауэр.

My Service:

use ApiPlatform\Core\Api\IriConverterInterface;
 ....
$context= []; // don't know what to include here
$iri= '/api/v4/files/448';
$file = $this->iriConverter->getItemFromIri($iri, $context);

My security.yml

firewalls:
    apiV4:
        pattern: ^/api/v4
        stateless: true
        fos_oauth:  true

MyКласс

/**
 * File
 * @ApiResource(
 *     attributes={
 *     "normalization_context"={"groups"={"fileUpload"}}
 *     },
 *      collectionOperations = {
 *          "get",
 *          "post" ={
 *              "method"="POST",
 *              "path"="/files",
 *              "controller"= UploadFileAction::class,
 *              "defaults"={"_api_receive"=false},
 *              }
 *          }
 * )
 *
 * @ORM\Table(name="UploadedFile")
 * 
*/
class File
{
/**
 * @var int
 * @ORM\Column(name="id", type="integer")
 * @ORM\Id
 * @ORM\GeneratedValue(strategy="AUTO")
 * @Groups({"fileUpload"})
 */
private $id;

/**
 * @var string
 * @Assert\NotBlank
 * @ORM\Column(name="name", type="string", length=255)
 * @Groups({"fileUpload"})
 */
private $name;
....
...