受影响的API平台版本:2.5.6
说明
遵循本文档:https://api-platform.com/docs/core/subresources/#using-custom-paths
我尝试覆盖子资源的路径(以及安全性和要求)。
它适用于安全性,但不适用于路径(以此类推)。
如何复制
克隆此仓库,并遵循很小的自述文件:
https://github.com/bastoune/api-platform-issue-1581
具有debug:router
的这条路线:
api_organizations_users_get_subresource GET ANY ANY /v2/organizations/{id}/users.{_format}
和这个注释:
* subresourceOperations={
* "api_organizations_users_get_subresource"={
* "method"="GET",
* "path"="/TEEEST/organizations/{organization_id}/users",
* "requirements"={"organization_id": StringHelper::UUIDv4Regex},
* "security"="is_granted('readOrganization', organization_id)"
* }
* }
安全性起作用,但其余部分无效。
如果我删除了安全保护,它还是无法正常工作。
答案 0 :(得分:3)
如此处所述:https://github.com/api-platform/api-platform/issues/1581#issuecomment-662503549
操作名称存在错误:
尝试使用“ users_get_subresource”作为操作名称(而不是 “ api_organizations_users_get_subresource”)。 api-platform / docs#1109
此PR是合并的api-platform / docs#370,但是此提交还原了更改api-platform / docs @ b8304bc