[英]Symfony Before filter not reporting the authentication token
我試圖在過濾之前創建一個symfony:到目前為止,我使用了本指南
( http://symfony.com/doc/current/event_dispatcher/before_after_filters.html )
這是代碼的重要部分
// src/AppBundle/EventListener/LoginListener.php
class LoginListener {
private $tokens_storage;
public function __construct($tokens_storage) {
$this->tokens_storage = $tokens_storage;
}
public function onKernelController(FilterControllerEvent $event) {
$controller = $event->getController();
dump($this->tokens_storage->getToken());
/*
...
*/
return;
}
// app/config/services.yml
app.tokens.LoginListener:
class: AppBundle\EventListener\LoginListener
arguments: ["@security.token_storage"]
tags:
- { name: kernel.event_listener, event: kernel.controller, method: onKernelController }
現在,根據轉儲,$ this-> tokens_storage-> getToken()返回null,但根據屏幕底部的探查器欄,我通過UsernamePasswordToken進行了身份驗證。
我該如何檢索該令牌?
編輯:如果我從控制器訪問令牌存儲,則正確填充TokenStorage內的令牌
我發現在偵聽器啟動之前正確填充TokenStorage的唯一可靠方法是禁用dev防火牆;
我實際上並不知道這可能會在開發過程中產生什么樣的問題,但至少現在它起作用了
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.