編程式使用者驗證
問題:
為了使用者入門,需要註冊用戶入門,需要使用後自動使用者登錄,繞過登入表單。
解決方案:
這可以透過程式設計驗證來實現。
實作:
要在Symfony 中完成此操作,可以執行以下步驟:
程式碼範例:
<code class="php">use Symfony\Component\EventDispatcher\EventDispatcher, Symfony\Component\Security\Core\Authentication\Token\UsernamePasswordToken, Symfony\Component\Security\Http\Event\InteractiveLoginEvent; public function registerAction() { // ... if ($this->get("request")->getMethod() == "POST") { // ... Password setting, etc. $em->persist($user); $em->flush(); $token = new UsernamePasswordToken($user, $user->getPassword(), "public", $user->getRoles()); $this->get("security.token_storage")->setToken($token); $event = new InteractiveLoginEvent($request, $token); $this->get("event_dispatcher")->dispatch("security.interactive_login", $event); // Redirect out if necessary } }</code>
注意:
請記住根據需要調整類型令牌和角色設定以滿足您的特定用例。
以上是Symfony 註冊後如何自動使用者登入?的詳細內容。更多資訊請關注PHP中文網其他相關文章!