按如下方式访问symfony项目中的消息页面。
function messageNavigate(hotelid) {
window.open('message/'+senderid+'','_blank')
}
这里是检查用户是否登录。如果没有,用户重定向到登录页面。我的问题是如何在登录之后使用先前选择的itemid重定向他。
的routing.yml
message:
path: /message/{itemid}
defaults: { _controller: TestBundle:Message:message }
login:
path: /login
defaults: { _controller: TestBundle:Security:login}
seciurity.yml
firewalls:
dev:
pattern: ^/(_(profiler|wdt)|css|images|js)/
security: false
main:
anonymous: ~
pattern: ^/
form_login:
login_path: /login
check_path: /login
default_target_path: /message/{itemid}
provider: our_db_provider
logout:
path: logout
target: /login
答案 0 :(得分:2)
不是检查用户登录信息并手动重定向到登录页面,而是在消息控制器中执行以下操作:
$this->denyAccessUnlessGranted('ROLE_USER');
如果用户未登录,则会重定向到登录页面。用户提交登录表单后,还会重定向回原始路由。
或者,您可以在会话中设置此属性:
_security.main.target_path
到您希望用户在登录后重定向的URI。