【发布时间】:2012-08-19 13:23:39
【问题描述】:
我正在编写一个简单的 Web 应用程序,使用 tomcat 服务器、servlet 和 jsp 页面。理想情况下,我希望我的网站只有一个页面,我可以在其中加载有关用户操作的内容(jsp 文件)。
但同样重要的是,用户将能够为某些网址“添加书签”以直接访问他们需要访问的内容。
例如,假设我有一个详细说明我网站的所有注册用户的页面,然后每个用户都有一个个人资料页面。我希望导航到某人个人资料的用户会看到以下网址:
http://mywebsite.com/users/some_user_name
当他们输入这个 url 时,他们将进入 some_user_name 的个人资料。
问题是所有内容都是使用 ajax 生成的,我手动更改了使用 history.pushState 显示的 url - 这样当您输入示例 url 时,您只会得到 404 页面。
我想到的一个简单解决方案是将一个 servlet 映射到 /users/* 模式,该模式以正确的 jsp 页面响应。这是一个合理的解决方案还是有其他更好和可接受的方法来处理此类问题?
谢谢:)
【问题讨论】:
-
来自 Wiki 本身关于 AJAX 的缺点:
Dynamic web page updates also make it difficult to bookmark and return to a particular state of the application. Solutions to this problem exist, many of which again use the URL fragment identifier.[8][9]无论如何,听起来您使用 AJAX 只是因为可以。如果可能,请不要再为 Web 提供另一个令人讨厌的 AJAX 网页,并重新考虑是否真的需要为整个网站使用 AJAX。
标签: ajax jsp web-applications servlets