JSP、JAVA、SPRING获取当前页面URL的方法
很多人在写登录的时候会遇到一个问题,那就是登录成功后跳转到当前页。其实原理很简单,在登录的form中,我们给一个隐藏的input,这个input保存的是当前页的url,并且提交表单的时候把这个值也给后台传过去。
java的request有方法可以获取到当前页的路径,也就是url。但是这个url是文件路径,比如说是**.jsp的相对于服务器的路径。
比如我有一个url是这样的http://127.0.0.1/test/do,这个url是spring的一个url,当在页面用request.get**的方法去拿url的时候,会取出/WEB-INF/****.jsp之类的文件url。我的解决办法是用js获取当前浏览器上的url地址,把url地址赋值给隐藏的input。
代码如下:
<input type=”hidden” name=”urlGoto” id=”1234″ />
<script language=”javascript”>
document.getElementById(“1234″).value = window.location.toString();
</script>
<input type=”hidden” name=”urlGoto” id=”1234″ />
<script language=”javascript”>document.getElementById(“1234″).value = window.location.toString();</script>
这样提交表单的时候就能成功地把当前页面的url传到后台了,登录成功之后,跳回到这个页面就可以了