登录struts2后返回调用者页面
我有一个download.jsp页面,该页面的功能是仅当他登录时才下载文件。 当他单击下载选项时,它会要求下载登录名,他会重定向到登录页面,当他进行身份验证时,用户应该重定向到download.jsp 这是我的登录struts2后返回调用者页面,struts2,struts-config,Struts2,Struts Config,我有一个download.jsp页面,该页面的功能是仅当他登录时才下载文件。 当他单击下载选项时,它会要求下载登录名,他会重定向到登录页面,当他进行身份验证时,用户应该重定向到download.jsp 这是我的struts.xml文件 欢迎 家 在LoginAction类中,我只有一个方法login,它验证并返回成功或失败,并调用结果页面 登录后如何返回调用方页面download.jsp您可以尝试实现上述功能的选项很少 httprefererheader-like final String
struts.xml
文件
欢迎
家
在LoginAction类中,我只有一个方法login,它验证并返回成功或失败,并调用结果页面
登录后如何返回调用方页面download.jsp您可以尝试实现上述功能的选项很少
httpreferer
header-like
final String refer = request.getHeader("Referer");
这几乎没有什么问题,防火墙和well浏览器可以阻止它,这可能会导致一些问题,尽管我没有看到任何这样的问题,并且使用过几次
另一个更可靠的解决方案是使用隐藏文件或附加当前页面URL作为查询字符串,并在应用程序中使用它,如
<a href="login?destination=theCurrentUrl">Login</a>
您可以使用此变量查找当前页面URL,并在登录后重定向它
如果您使用的是Spring安全性,它内置了此功能,用于存储来自使用位置的信息,并在身份验证后重定向回同一页面
希望这对您有所帮助您介意发布控制器的“登录”方法吗?如果您总是想返回“download.jsp”,那么操作重定向非常简单。但是,如果你想返回“上一页”,你必须将该url保存在某个地方,比如GET参数或in session。登录方法只能返回两个值,即“success”或“failure”,因为用户担心我在会话中保留了一个url。是否仍然可以返回上一页并返回“成功或失败”