GWT 历史 token 重写

标签 gwt url-rewriting token gwt-history

我想重写历史 token 。不知道有没有可能。 例如如果我的应用程序 URL 是 http://localhost:8080/myapp/#login其中包含“登录”作为历史标记。是否可以重写 URL,如 http://localhost:8080/myapp/user/login .

或者是否可以从历史标记中删除“#”?

最佳答案

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

如果您将 URL 从 #login 重写为 /user/login,您将指示浏览器重新加载页面,这意味着整个 GWT 页面被重新加载并且所有状态信息都被重置。这可能不是您想要的。

所以简短的回答是,虽然这在技术上是可行的,但它将行为从单页网站更改为每次历史记录更改时重新加载的多页网站,这可能不是您想要的。

关于GWT 历史 token 重写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2355175/

相关文章:

.htaccess - Mediawiki 的缩略图处理程序(重写)不起作用

java - Camel如何将授权 header 添加到休息路线?

xml - XSLT 高效识别给定范围内的重复节点

java - 如何高效使用Eclipse GWT工具包的整个菜单

java - GWT AnnotatedTimeLine 异常 "AnnotatedTimeLine is not a constructor"

java - 使用 UIBinder 两次

java - 如何修改读取 vector 的正则表达式来读取矩阵?

java - GWT、Eclipse 插件如何重命名项目以及 .gwt.xml 文件?尝试这样做时出现错误

没有名字的 ASP.NET 网页,比如 stackoverflow?

regex - apache .htaccess 重写不应包含 www