首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >没有通过子资源调用Symfony投票者。

没有通过子资源调用Symfony投票者。
EN

Stack Overflow用户
提问于 2020-06-02 14:39:39
回答 1查看 397关注 0票数 0

以下是背景:

我在api-platform中使用Symfony 3.4。

我有两门课:

  • Supplier
  • Product

我想列出供应商的所有产品

在供应商实体中,我在常规CRUD方法上实现了access_control,该方法可以很好地与投票者一起工作。

我还有一条通过子资源的路由,该子资源不能正常工作:

代码语言:javascript
运行
复制
 * collectionOperations={
 *          "get"={
 *              "access_control"="is_granted('LIST', object)",
 *              "normalization_context"={"groups"={"supplier.liste"}},
 *          },
 *     },
 *     itemOperations={
 *          "get"={
 *              "method"="GET",
 *              "access_control"="is_granted('VIEW', object)",
 *          },
 *     },
 *     subresourceOperations={
 *          "supplier_product_get"={
 *              "path"="/supplier/{id}/products",
 *              "method"= "GET",
 *              "access_control"="is_granted('LIST', object)",
 *          },
 * }

问题是,子源的访问控制无法工作。在那里,它应该检查投票者对这个资源的权限,但是当我需要他返回403时,它不会检查投票者并返回HTTP响应代码200。

我检查了它们使用安全性而不是access_control的文档:

代码语言:javascript
运行
复制
 * subresourceOperations={
 *          "supplier_product_get"={
 *              "path"="/supplier/{id}/products",
 *              "method"= "GET",
 *              "security"="is_granted('LIST', object)",
 *          },
 * }

它也不起作用。

有没有人有任何线索或提示为什么选民不叫?

EN

回答 1

Stack Overflow用户

发布于 2020-06-16 09:39:39

只有一个小费。我认为操作将命名为"api_questions_answer_get_subresource",在您的例子中是"api_products_supplier_get_subresource“(使用"bin/console debug:路由器”检查名称)。

请参阅https://api-platform.com/docs/core/subresources/#subresources

请注意,操作名(此处为api_questions_answer_get_subresource )是重要的关键字。它将自动设置为$resources_$subresource(s)_get_subresource。要找到正确的操作名称,可以使用bin/控制台调试:_get_subresource。

而且,您似乎可以在ApiPlatform\Core\Bridge\Doctrine\Orm\Paginator).中使用'object‘参数,并且它包含子资源的集合(在我的例子中是is_granted )。因此,如果您打算授予您的子资源类,或对象本身,我认为您将需要一些额外的工作(只要考虑一下,如果您真的需要它)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62154584

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档