[英]Symfony authenticate user against remote API
我有一个问题,或多或少与此人相同: Symfony 3根据远程API对用户进行身份验证
但是我的问题是,我该如何处理令牌?
我使用过警卫,我做了一个api服务,可以在其中检索令牌,但可以在哪里存储呢? 我想设置一个cookie,但无法从服务中编写该cookie,否则将无法启动会话,因此在回答中我不理解:“将令牌存储在前端存储中”。
我真的没有办法将令牌存储在cookie中吗?
谢谢!
为什么不可以不使用服务中的会话? 将会话组件注入您的服务中,您就可以开始了。
class TheService {
public function __construct(SessionInterface $session) {
$this->session = $session;
}
public function stuff() {
$this->session->set('my_token', 'h3ll0');
}
}
参见http://symfony.com/doc/current/components/http_foundation/sessions.html
如果您使用的是最新版本的Symfony,则其自动装配功能将负责注入session
服务,否则,您需要在services.yml
配置该服务:
services:
my_service:
class: AppBundle\Service\TheService
public: true
arguments: ['@session']
他的意思不清楚,但是我认为最好的解决方案是将其存储在会话变量中。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.