[英]Create route without path [Symfony3]
在firewall / main / form_login的security.yml中,我具有以下內容:
default_target_path: after_login
always_use_default_target_path: true
我想創建一個名為after_login的路由,但是沒有路徑,但是symfony在登錄后將我重定向到主頁。
/**
* @Route(name="after_login")
*/
public function afterloginAction()
我希望沒有人可以訪問此控制器的方法。
登錄此方法后,是否可以創建這樣的路由或其他重定向方法?
我想向會話添加一些變量,但登錄后只能添加一次。
解決此問題的最佳方法是偵聽security.interactive_login
事件:
default_target_path並非用於此目的。 那只是重定向到控制器操作,例如用戶配置文件。
一次使用控制器動作,然后通過設置會話密鑰使其不可訪問將是一個丑陋的黑客。
為此,請閱讀https://symfony.com/doc/current/components/security/authentication.html#authentication-events 。 使用事件偵聽器會使它自動隱藏在外界之外。
@Route無法做到這一點。 這里有什么問題,為什么要呢?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.