как отладить & quot; & quot; Невозможно получить свойство для необъекта. & quot; в пользовательских операциях?

Я получаю ошибку

«hydra: description»: «Невозможно получить свойство для необъекта.»,

при попытке реализовать пользовательскую операцию. Я пытаюсь выяснить, что является причиной этой проблемы, и хотя я нашел дюжину или около того диких предположений как в стеке потока, так и в других местах, ни одно из опубликованных там решений не работает для меня.

Я пытаюсь выяснить, как отладить эту проблему. Трассировка и информация, включенная в сообщение об ошибке, менее чем полезны:

{
"@context": "/api/contexts/Error",
"@type": "hydra:Error",
"hydra:title": "An error occurred",
"hydra:description": "Unable to get a property on a non-object.",
"trace": [
{
"namespace": "",
"short_class": "",
"class": "",
"type": "",
"function": "",
"file": "/Users/tom/Code/api-platform/vendor/symfony/expression-language/Node/GetAttrNode.php",
"line": 73,
"args": []
},
{
"namespace": "Symfony\\Component\\ExpressionLanguage\\Node",
"short_class": "GetAttrNode",
"class": "Symfony\\Component\\ExpressionLanguage\\Node\\GetAttrNode",
"type": "->",
"function": "evaluate",
"file": "/Users/tom/Code/api-platform/vendor/symfony/expression-language/Node/GetAttrNode.php",
"line": 71,
"args": [
[
"array",
{
"constant": [
"array",
{
"compiler": [
"object",
"Closure"],
"evaluator": [
"object",
"Closure"]
}
],
"is_granted": [
"array",
{
"compiler": [
"object",
"Closure"],
"evaluator": [
"object",
"Closure"]
}

все это абсолютно ничего не говорит мне о том, какое свойство какого объекта он ищет, какие данные он проверяет и где я должен искать проблему.

Я попытался добавить операторы var_dump () как в свой собственный код, так и в места, как в строке 73 в GetAttrNode.php, и это не помогает. Похоже, что код даже не попал в мой контроллер. Я совершенно уверен, что проблема не в моем контроллере, так как на этом этапе контроллер — только заглушка, как описано в документации (https://api-platform.com/docs/core/operations#creating-custom-operations-and-controllers).

Как я могу отладить эту проблему и выяснить, где проблема?

0

Решение

Согласно предоставленной вами трассировке стека, ошибка в вашем правиле безопасности. Проверьте значение is_granted атрибут в вашем классе отмечен @ApiResource аннотация, в ней есть какие-то ошибки.

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector