首页新闻找找看学习计划

request.getServletPath()在IE下获取路径出错

0
悬赏园豆:50 [已解决问题] 解决于 2015-07-06 08:40


在上面的Filter里面我写了一个获取路径的方法,String path=request.getServletPath();
在火狐和谷歌浏览器下面得到的path就是我想要的路径,下面是火狐获取到的路径:

但是在IE下获取到的路径就多出来一个action的命名空间,下面是IE下获取到的路径:

在百度上查都是说request获取路径的几种方式,对我的问题完全没用啊,特来请教各位大神这个怎么解决,快疯了。
忘记说了,下面是web.xml中对于这个fiflter的配置:

我就是不明白为什么在火狐和谷歌下面没问题,在IE下面就有问题了,难道是IE浏览器的问题?
我的IE浏览器的版本的是11的。求教各位大神

问题补充:

刚刚又发现一个问题,其实并不是说request.getServletPath();获取到的路径有问题,而是在IE浏览器中,每次点击一个连接路径上面就会多出一个/com,我把过滤器注释掉之后,一直在点一些连接,然后就出现下面这种情况:

也就是说IE浏览器每次都会保留一个/com,然后下次访问其他的时候就会变成/com/com/*.do

多次累计下来就会出现很多/com,这种路径过滤器要是能通过就怪了,但是为什么会这样呢?

李爱戴的主页 李爱戴 | 初学一级 | 园豆:2
提问于:2015-07-03 12:30
< >
分享
最佳答案
0

是ie  绝对路径时候,应用名和别的不一样。 我之前都是用getServerName()+getPort+....这一堆完整的。

收获园豆:50
洛城秋色 | 菜鸟二级 |园豆:324 | 2015-07-03 16:01

今天在百度的时候也看到一些人用你说的这种方法,但是每个路径都要这么拼串感觉好麻烦啊

李爱戴 | 园豆:2 (初学一级) | 2015-07-03 16:04

@李爱戴: 好像也有简单办法。。不过好久没做web项目,忘了。现在就能知道问题是处在这。。ie会多拼一级路径。只能帮你到这了!

洛城秋色 | 园豆:324 (菜鸟二级) | 2015-07-03 16:06

@洛城秋色: 恩,不管怎么说,谢谢啦,我再试试,不行也只能这么搞了

李爱戴 | 园豆:2 (初学一级) | 2015-07-03 16:06
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册