如何使用GWT客户端下载文件?

使用GWT客户端下载pdf文件的最佳方法是什么? 我应该调用普通的servlet吗? 还是有不同的首选方法来处理这个问题?

我是GWT的新手,所以如果一些示例代码会有很大的帮助。

谢谢你

尝试使用GET …

Window.open(GWT.getHostPageBaseURL() + "FileRepository/doDownload?docId=" + dokument.getId(), "", ""); 

您可以实现Servlet下载文件,也可以使用数据URI执行此操作:

  1. 使您的GWT RPC方法返回文件内容或数据以生成文件。
  2. 在客户端,使用接收的文件内容格式化数据URI或生成数据内容。
  3. 使用Window.open打开文件保存对话框,传递格式化的DataURI 。

看一下这个参考,了解Data URI的用法:

在jQuery中导出到csv

最好的方法是将浏览器导航到该文件

在下载按钮添加点击处理程序:

 Button downloadButton = new Button("Download"); downloadButton.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { Window.open("url_of_file", "download File", ""); } });