Php 检查令牌是否有效

Php 检查令牌是否有效,php,rest,symfony,token,Php,Rest,Symfony,Token,我在我的SYMFONY 4.3应用程序中使用第三方REST API。我的应用需要在任何请求之前检查令牌是否有效。在symfony中,何时是检查令牌是否有效以及是否在请求之前尝试刷新的最佳位置?symfony中是否存在任何前置请求筛选器?或者,当我可以获取所有请求时,是否存在全局对象?如果标头为401,则我可以执行特定操作 现在我的应用程序中有了中心点,所有请求都通过这个函数传递。但在将来,当我有其他的请求没有通过这个函数时,我必须进行下一个函数等等。。。我正在搜索放置有效代码的地方,我在思考类似

我在我的SYMFONY 4.3应用程序中使用第三方REST API。我的应用需要在任何请求之前检查令牌是否有效。在symfony中,何时是检查令牌是否有效以及是否在请求之前尝试刷新的最佳位置?symfony中是否存在任何前置请求筛选器?或者,当我可以获取所有请求时,是否存在全局对象?如果标头为401,则我可以执行特定操作

现在我的应用程序中有了中心点,所有请求都通过这个函数传递。但在将来,当我有其他的请求没有通过这个函数时,我必须进行下一个函数等等。。。我正在搜索放置有效代码的地方,我在思考类似“在任何API请求之前调用此函数”的地方

我应该用它吗?


我想建议的解决方案是在我几乎所有的前端身份验证项目中使用它,例如,您可以自定义默认响应(JWT令牌未找到/无效)以返回您想要的响应。你可以为你的目的创建两个匿名真或假路由,我想匿名应该是真的,即使你的令牌过期了,你也会延长它的生存期。如果您需要一些见解,请对此答案发表评论,我将尽我所能提供解决方案。我想建议的解决方案是在我的几乎所有前端身份验证项目中使用它。例如,您可以自定义默认响应(JWT令牌未找到/无效)以返回您想要的响应。你可以为你的目的创建两个匿名真或假路由,我想匿名应该是真的,即使你的令牌过期了,你也会延长它的生存期。如果您需要一些见解,请对此答案发表评论,我将尽可能提供

请添加一些代码,并让我们知道您已经尝试了什么!看看这是不是你的答案?这不是,我的意思是在请求API之前验证JWT令牌,不是csrf令牌。请添加一些代码,让我们知道您已经尝试了什么!看看这是不是你的答案?这不是,我的意思是在请求API之前验证JWT令牌,不是csrf令牌。我可以为JWT担保,我已经在几个企业项目中使用过,这非常好。我可以为JWT担保,我已经在几个企业项目中使用过,这非常好。
public function prepareRequest($method, $endPoint) {
.........

// Users can have many tokens connected to different accounts on third party app
 $apiTokens = $user->getApiTokens();

 /** @var ApiToken $apiToken */
 foreach ($apiTokens as $apiToken) {
    if ($this->isTokenValid($apiToken)) {
       ............. make request with specifed apiToken
}


 public function isTokenValid(ApiToken $token): bool
{
  if token is not valid return false
  if token date expired try to refresh token
  if token is not valid or refreshing token fails return false else return true

}