GWT历史记录令牌重写

jax*_*axb 2 gwt url-rewriting token gwt-history

我想做历史记录重写.不知道它的可能性与否.例如,如果我的应用程序URL是http:// localhost:8080/myapp /#login,其中包含'login'作为历史记录标记.是否可以重写URL,如http:// localhost:8080/myapp/user/login.

或者是否可以从历史记录中删除"#"?

Hil*_*amp 8

#令牌在URL中具有特殊含义.浏览器将#令牌之前的所有内容解释为要加载的页面,以及#作为页面上的附加信息之后的所有内容.这意味着如果在#令牌之后在URL中更改了某些内容,则不会重新加载该网页,但会创建一个浏览器历史记录项.GWT使用它来创建新的历史记录项,而不是重新加载页面.

如果你想从重写URL #login/user/login你指示浏览器刷新页面,这意味着整个GWT页面重新加载和所有状态信息被重置.这可能不是你想要的.

所以简短的回答是,虽然技术上可行,但它会将行为从单页网站改为多页网站,每次历史记录发生变化时都会重新加载,这可能不是你想要的.