API平台-自定义子资源路径不起作用

时间:2020-07-07 13:25:52

标签: api-platform.com

受影响的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)"
 *          }
 *      }

安全性起作用,但其余部分无效。

如果我删除了安全保护,它还是无法正常工作。

1 个答案:

答案 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