1
我有RestAPI应用程序,我想调用我的网址后检查令牌。如何在所有symfony控制器上运行代码?
我的网址是这样的:127.0.0.1:8000/{api_token}/GetUsers
,犹如md5('test'.time())
我现在控制器产生我api_token是:
/**
* @Route("/{api_token}")
*/
class UserController extends FOSRestController
{
/**
* @Rest\Get("/GetUsers")
*/
public function getAction($api_token, Request $request)
{
if($api_token != $this->container->get('api_token')->getApiToken())
return ['error'=> ['code' => 403, 'message' => 'Authentication failed']];
//....
}
/**
* @Rest\Post("/RegisterUser")
*/
public function registerAction($api_token, Request $request)
{
if($api_token != $this->container->get('api_token')->getApiToken())
return ['error'=> ['code' => 403, 'message' => 'Authentication failed']];
//....
}
}
这部分代码在第一次我所有的行动中运行:
if($api_token != $this->container->get('api_token')->getApiToken())
return ['error'=> ['code' => 403, 'message' => 'Authentication failed']];
什么是标准d和更好的方式来做到这一点?