FOSRestBundle:如何在我的 Rest API 中将数组设置为URL


FOSRestBundle: How to set an array to an URL in my Rest Api

我在Symfony中有我的RestBundle,我想在我的api-url-call中发送一个数组:

@Annotations'QueryParam(
     *   name = "codes",
     *   array = true,
     *   nullable = false,
     * )

但是当我在我的链接中放置一个 url 编码的数组时,例如:

...0%5BcodeId%5D=443&0%5Bcode%5D=AAA222&1%5BcodeId%5D=443&1%5Bcode%5D=BBB222&2%5BcodeId%5D=443&2%5Bcode%5D=ABC123

它说有一个数组而不是字符串。但是如何将数组设置为链接?

试试这个方式:

    "...%5BcodeId%5D%5B0%5D=443&%5Bcode%5D%5B0%5D=AAA222&%5BcodeId%5D%5B1%5D=443&%5Bcode%5D%5B1%5D=BBB222&%5BcodeId%5D%5B2%5D=443&%5Bcode%5D%5B2%5D=ABC123"

解码:

...[codeId][0]=443&[code][0]=AAA222&[codeId][1]=443&[code][1]=BBB222&[codeId][2]=443&[code][2]=ABC123

如果有用,请查看使用 Param 提取器侦听器的示例:https://github.com/FriendsOfSymfony/FOSRestBundle/blob/master/Resources/doc/3-listener-support.rst