无法获得ics文件来下载并在iOS上打开日历

问题描述 投票:1回答:2

我编写了一个简单的PHP脚本来动态编写.ics文件。提交HTML表单时将调用脚本:

<form id="m1-remind-form" action="/php/make_ics.php" method="get">

在桌面上可以正常工作。将下载文件,并在用户打开文件时添加日历事件。在带有移动Safari的iOS设备上,没有任何反应。即使我只是直接链接到有效的ics文件,也不会发生任何事情。 MIME类型(文本/日历)已添加到服务器。 php提供了这些标题:

header("Cache-Control: private");
header("Content-Type: text/calendar; charset=utf-8");
header("Content-Disposition: attachment; filename=".$filename .".ics");

我弄乱了其他mime类型和各种标题设置。似乎没有任何效果。

我找到了一个网站,他们动态创建的ics文件可通过移动Safari下载,并可以很好地打开Calendar,并具有我想要的用户体验。看到这里:http://m.anderson.ucla.edu/today

他们正在使用.NET脚本制作ics文件,但这没有什么区别。

似乎可能是服务器(IIS)问题,但我们不知道这可能是什么。有什么建议么?我在这里茫然。

php ios forms calendar icalendar
2个回答
0
投票

[表单按钮未在移动Safari上提交。它确实在桌面上提交了。必须使用JavaScript强制在手机上提交。

btn.addEventListener('touchend', function(){form.submit()});

0
投票

使用此:

header(“ Content-Disposition:inline; filename =”。$ filename。“。ics”);

© www.soinside.com 2019 - 2024. All rights reserved.