我使用FileSaver.js(在GWT中)将生成的HTML文件保存到客户端。 这对95%的客户没有问题。
但有些人(webapp安装在带有客户端的IIS服务器上),这在Chrome和Firefox中无效(但它在IE中可以正常工作)。
在Chrome中,效果是网站网址更改为类似文件系统的网址:https://www.abc.be/temporary/saved/filename.html.download,在浏览器窗口中,您只看到文件的内容(您只看到html代码,未呈现)。 / p>
在Firefox中,效果几乎相同。除了在这种情况下,网址看起来像blob:https://247.abc.be/7bec1d6a-a39f-49eb-ab86-835011b502d6
知道这些特定安装有什么问题吗?
这是我用来调用FileSaver的GWT JSNI方法。几乎在每种情况下工作。
/**
* Save text to filename.
* @param fileName The filename to use
* @param text The text to save
*/
public static native void saveText(String fileName, String text)
/*-{
var textMessage = new Blob([text],{type: "text/plain;charset=utf-8"});
$wnd.saveAs(textMessage, fileName);
}-*/;