如何在API symfony2内的GET请求中传递多个参数?

时间:2016-11-25 14:48:30

标签: api symfony parameters fosrestbundle nelmioapidocbundle

我使用的是FOSRestBundle,我在Symfony中很新。

我一直在关注我见过的一些例子,但我无法在请求中添加多个参数。

例如

/**
     *  
     * @param  string $id Identifier
     * @return [type]     [description]
     *
     * @ApiDoc()
     */
    public function getProductsAction($id)
    {
        return myfunction($id);
    }

工作正常,但如果我想做这样的变化:

 /**
     *  
     * @param  string $id Identifier
     * @return [type]     [description]
     *
     * @ApiDoc()
     */
    public function getProductsAction($id, $month)
    {
        return myfunction($id, $month);
    }

它不起作用。它只标识$ id

我不知道有任何限制吗?或者除了我做过的简单修改之外还有一些额外的配置?

1 个答案:

答案 0 :(得分:1)

写作时

private void button1_Click(object sender, EventArgs e)
{
    if (e is MouseEventArgs)
    {
        // Is mouse click
    }
    else
    {
        // Not mouse click...
    }
}

它相当于

/**
 *  
 * @param  string $id Identifier
 * @return [type]     [description]
 *
 * @ApiDoc()
 */
public function getProductsAction($id)
{
    return myfunction($id);
}

Symfony自动映射路线和参数。

但是当你写作

use FOS\RestBundle\Controller\Annotations\Get;

/**
 * @Get("/products/{id}")
 * @param  string $id Identifier
 * @return [type]     [description]
 *
 * @ApiDoc()
 */
public function getProductsAction($id)
{
    return myfunction($id);
}

Symfoy不知道如何处理您的/** * * @param string $id Identifier * @return [type] [description] * * @ApiDoc() */ public function getProductsAction($id, $month) { return myfunction($id, $month); } 参数,您需要告诉它

$month