在 html 中标签,如何在打开文件对话框进行下载(另存为)之前调用servlet?
我正在开发一个网络应用程序,我想向用户提供下载链接 - 这样他们就可以从我的服务器下载 zip 文件。 现在,我的要求是,我想在向用户显示“zip”文件的文件对话框之前执行 servlet 中包含的一些处理逻辑。
因此,如果我编写
<a href="abc.zip".......>
,它会打开一个文件对话框,要求用户选择可以保存该文件的位置
,但是如果我想要 servlet 的 doGet 方法进行一些预处理 - 比如构建 zip 文件,那么我如何首先调用servlet,然后打开文件对话框。
下面的代码片段会起作用吗?
<a href="MyHandlerServlet;abc.zip".......>
感谢您的帮助 !!
I am developing a web-app where I want to provide a download link to users - so they can download a zip file from my server.
Now, my requirement is that I want to execute some processing logic contained in a servlet before displaying the file dialog to the user for 'zip' files.
So If I write
<a href="abc.zip".......>
then it opens a file dialog asking the user to select the location where this file can be saved
But if I want a servlet's doGet method to do some preprocessing - say like building the zip file , then how can I first call the servlet and then open the file dialog.
Will the following snippet work?
<a href="MyHandlerServlet;abc.zip".......>
Thanks for your help !!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我宁愿将文件名作为路径信息而不是请求参数传递,例如
,否则雷蒙德(咳嗽)团队开发的某个广泛使用的网络浏览器将在“另存为”期间使用
MyHandlerServlet
作为文件名>。当将文件名作为路径信息传递时,您可以通过以下方式在 servlet 中获取请求的文件:您只需将 servlet 映射到
/MyHandlerServlet/*
而不是/MyHandlerServlet
上。另请参阅此基本 Servlet 示例。I would rather pass the filename as pathinfo instead of request parameter, e.g.
Otherwise a certain widely used webbrowser developed by a team in Redmond (cough) would use
MyHandlerServlet
as filename during Save As. When passing the filename as pathinfo, you can obtain the requested file in the servlet by:You only need to map the servlet on
/MyHandlerServlet/*
instead of/MyHandlerServlet
. Also see this basic servlet example.Servlet 需要使用 zip 文件响应请求。
The servlet would need to respond to the request with the zip file.