我是Web开发的新手,所以如果这个问题不好,我深表歉意。我想在用户请求时(即发送HTTP附件以触发浏览器的“另存为...”对话框)向用户提供服务器硬盘驱动器上的文件。用户单击页面上的按钮,服务器将根据他/她的一些帐户设置(和其他参数)生成自定义数据文件,然后应弹出“另存为...”对话框。我应该如何用Java脚本实现呢?

编辑:供您参考,该服务器具有Glassfish和Apache

最佳答案



另存为对话框仅在页面加载时显示。您需要将用户直接重定向到您想要他们保存的文件,或重定向到提供该文件的服务器端页面。

知道文件地址后,执行以下操作

window.location = http://yourserver.com/generatedfiles/file_2342342.txt


或者,执行以下操作:

window.location = http://yourserver.com/getgeneratedfile.aspx?fileID=2342342


...这会将用户重定向到提供所生成文件的页面。然后,您需要在该页面的标题中指定内容处置和文件名,如甘道夫的答复中所述。

编辑:啊,您正在使用Apache。那时那里可能没有ASPX文件。

关于javascript - 使用Javascript向用户发送HTTP附件(打开浏览器的“另存为...”对话框),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1095246/

10-09 19:58
查看更多