使用Symfony2 FOSRestBundle验证数据

使用Symfony2 FOSRestBundle验证数据,symfony,fosrestbundle,Symfony,Fosrestbundle,使用FOSRestBundle验证向Symfony2 Rest API发布数据的最佳方法是什么?我通常会使用路由要求,但随着FOSRestBundle自动生成路由,我不确定最好的方法是什么?如果使用参数注释,POST数据可以通过与GET数据相同的方式进行验证。例如,如果您需要ID和密码,您可以使用: /** * POST /login.json * * @RequestParam(name="id", requirements="\d+", description="User id")

使用FOSRestBundle验证向Symfony2 Rest API发布数据的最佳方法是什么?我通常会使用路由要求,但随着FOSRestBundle自动生成路由,我不确定最好的方法是什么?

如果使用参数注释,POST数据可以通过与GET数据相同的方式进行验证。例如,如果您需要ID和密码,您可以使用:

/**
 * POST /login.json
 *
 * @RequestParam(name="id", requirements="\d+", description="User id")
 * @RequestParam(name="password", requirements="\w{8,}", description="Password")
 */
public function postLoginAction(ParamFetcherInterface $paramFetcher)
{
    ...
}

注意使用@RequestParam而不是@QueryParam——前者用于POST,后者用于GET。如果您需要更多有关使用Param注释的示例,请查看示例应用程序。

没错!这个答案应该被接受,这正是我想要的,我的谷歌搜索正是你问题的标题。