Symfony 使用包含相同公共参数的FOSRestBundle生成API路由

Symfony 使用包含相同公共参数的FOSRestBundle生成API路由,symfony,routes,fosrestbundle,Symfony,Routes,Fosrestbundle,我正在使用FOSRestBundle来构建我的API,但我陷入了一个需要解决的问题,即每个API路由都应该包含一个默认参数,一个用于检查权限的API密钥,但我不想将它放在API上的每个操作上,因为我不会在我的控制器上使用它,我只想使用它来验证用户 因此,我想知道我是否可以自动生成这些路由,创建某种通用路由,所有路由都为该特定路由继承 为了澄清问题,我将举几个我想得到的例子: 我的控制器上有以下操作: public function getSomethingAction($apiKey) {

我正在使用FOSRestBundle来构建我的API,但我陷入了一个需要解决的问题,即每个API路由都应该包含一个默认参数,一个用于检查权限的API密钥,但我不想将它放在API上的每个操作上,因为我不会在我的控制器上使用它,我只想使用它来验证用户

因此,我想知道我是否可以自动生成这些路由,创建某种通用路由,所有路由都为该特定路由继承

为了澄清问题,我将举几个我想得到的例子:

我的控制器上有以下操作:

public function getSomethingAction($apiKey)
{
  //My logic goes here
}
因此,捆绑包生成的路由为:

/api/somethings/{apiKey}
但是在这一点上,apikey参数已经被使用了,所以我不希望出现,但是如果我不将该参数放入方法中,我会得到:

/api/somethings
我希望这些例子能阐明我想要实现的目标

提前感谢我得到的每一个答案

问候


我认为您应该重新考虑在资源URL中提供API键。我建议通过HTTP头授权来支持API密钥,并实现自定义Symfony验证器,如以下文档所述: