从 war 文件提供文件

发布于 2024-11-27 19:09:47 字数 191 浏览 1 评论 0原文

我正在使用 java servlet 容器,它提供 webapp 目录中的文件。比如说我有 Foo.html。 host:80/Foo.html 将提供该文件。如何为 host:80/XXX/YYY 提供 Foo.html,其中 XXX 和 YYY 可能有很多内容?我并不是说重定向。

不确定它有多重要。我正在使用 Jetty 和 Guice 过滤器。

I am using a java servlet container, which serves files from the webapp directory. Say for instance I have Foo.html. host:80/Foo.html will serve this file. How do I serve the Foo.html for host:80/XXX/YYY, where XXX and YYY may be a number of things? I don't mean a redirect though.

Not sure how important it is. I am using Jetty and Guice filters.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

夜声 2024-12-04 19:09:47

将 servlet 映射到所需的 URL 模式,该模式使用 RequestDispatcher#forward() 转发到目标资源。

// ...
request.getRequestDispatcher("Foo.html").forward(request, response);

这并不像重定向那样反映浏览器地址栏中的任何更改 - 如果这毕竟是您实际关心的问题。重定向基本上告诉浏览器在给定位置发送全新的 HTTP 请求。转发基本上告诉 servlet 容器在响应中加载给定的资源。

Map a servlet on the desired URL pattern which uses RequestDispatcher#forward() to forward to the target resource.

// ...
request.getRequestDispatcher("Foo.html").forward(request, response);

This does not reflect any change in the browser address bar like as a redirect does -if that's your actual concern after all. A redirect basically tells the browser to send a brand new HTTP request on the given location. A forward basically tells the servletcontainer to load the given resource in the response.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文