我创建了一个 HTML5 应用程序,允许用户下载 iCal 格式的日历条目。这些 iCal 是使用 PHP 创建的。直到今天,我的方法是使用 PHP 生成 iCal 文件并将其写入 Web 服务器上的硬盘。之后,我将此文件的 URL 传递给前端(JavaScript),以便可以使用window.open()
命令打开它。
这种方法的缺点是在硬盘上创建了越来越多的文件。我知道必须有另一种方法,即向 PHP iCal 生成器发送的响应添加特定的标头。这是真的?
我尝试使用这些标题:
header('Content-type: application/force-download; charset=utf-8');
header('Content-Disposition: attachment; filename="eintrag.ics"');
直接调用PHP生成文件时,iCal文件会正确显示在浏览器中以供打开。但是当我从我的 HTML5 应用程序中使用 AJAX 调用这个 PHP 文件时,什么也没有发生。
我究竟做错了什么?
干杯