我希望能夠在我的應用程序來模擬用戶,所以我跟着tutorial from the website當我已經冒充另一個用戶時模擬一個用戶?
如果我嘗試從用戶「A」我的用戶轉變爲用戶「B」,它的工作原理,但如果我嘗試改變用戶「C」,而我已經冒充用戶「B」,該attemptSwitchUser
方法拋出此excepcion:
You are already switched to "B" user.
500 Internal Server Error - LogicException
這是因爲這種方法檢查羯羊當前用戶名(B)等於用戶名,我們想模仿(C)
$token = $this->securityContext->getToken();
$originalToken = $this->getOriginalToken($token);
if (false !== $originalToken) {
if ($token->getUsername() === $request->get($this->usernameParameter)) {
return $token;
} else {
throw new \LogicException(sprintf('You are already switched to "%s" user.', $token->getUsername()));
}
}
但是,顯然這不能永遠是這種情況,所以我不知道這是Symfony代碼中的錯誤還是還有其他錯誤。
這真的是一個錯誤嗎?我可以在不註釋掉這段代碼的情況下實現此功能嗎?
也許你只是剪切/粘貼錯誤的鏈接,這將導致你嘗試模仿「用戶B」,當你已經「用戶B「 – DonCallisto
不,情況並非如此,DonCallisto – zootropo