使用GWT掩盖浏览器URL

时间:2013-09-10 15:37:18

标签: java gwt

页面访问时我的GWT应用程序URL如下所示:

http://127.0.0.1:8888/index.html?gwt.codesvr=127.0.0.1:9997#ViewPage;hash=6a

http://127.0.0.1:8888/index.html#ViewPage;hash=6a

然而,这看起来不太好,GWT客户端代码是否有办法让它看起来像这样,以某种方式“掩盖”它:

http://127.0.0.1:8888/6a

我将servlet配置为将此“缩短”的URL转发到上面的长URL,这样可以非常安全地将URL“屏蔽”?不失国家和历史。

2 个答案:

答案 0 :(得分:0)

我没有看到任何直接使用GWT的方法,因为GWT需要访问URL中的代码片段来管理浏览历史和状态。

一种间接的方法是将GWT模块嵌入占据整个页面区域的iframe内。缺点是用户将无法为GWT应用程序内的页面添加书签。

顺便说一句,我不同意你认为“看起来不太好”。许多流行的Web应用程序都使用这样的URL,包括Gmail。大多数用户不关心URL中的内容。

答案 1 :(得分:0)

我知道的最短可能性是URL,如:

http://127.0.0.1:8888/#6a

因此,您必须将index.html配置为默认页面。 (必须将其配置为默认响应)。

您还必须重写历史记录管理。您必须从URL删除Place-Token。