问题标签 [webcal]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2319 浏览

node.js - 如何使用 node.js 发送 webcal 请求?

我尝试解析 icloud 日历(CalDav)。该日历可通过 webcal-protocol 访问。日历的地址看起来像webcal://p19-calendarws.icloud.com/ca/....

所以我的(希望是简单的)问题是:如何使用 webcal-protocol 发送请求?我用请求模块尝试了它,但收到了那个错误消息[Error: Invalid protocol: webcal:]而且 nativ http-module 似乎不适合那个。

编辑: 我尝试使用 http 模块:var url = "webcal://p19-calendarws.icloud.com/ca/**************";

得到以下错误:Error: Protocol:webcal: not supported.

解决方案: 首先我必须替换webcal://日历https://地址中的。Apple 将重定向到日历的 icalendar 文件。由于重定向,我使用了request模块,它可以很好地处理重定向。

0 投票
1 回答
147 浏览

android - 有没有办法使设备上订阅的日历提要失效?

我们本土的 CMS 创建日历提要,其中包含一个青年运动队的单个赛季的日程安排。我们为最终用户提供 URL 以在他们的设备(或他们的软件程序)上使用 feed,每年有成千上万的人这样做。

问题在于,对于大多数程序和设备而言,添加日历订阅的 UI 相对较好,但在不再需要时删除这些提要 - 并没有那么多。

对我们来说,这造成了这样一种情况,即超过 90% 的对我们服务器的日历提要请求来自日程安排早已完成的团队。

最初,我们尝试只为非当前团队返回一个空提要,但这并没有阻止设备首先发出请求(这会占用我们服务器上的资源)。它根本不足以(或根本)激励最终用户做某事。

因此,在过去的几年中,我们改为返回一个从上个月到下个月的单个事件,标题为“请删除这个过时的提要”,甚至提供了一些这样做的说明。这有点帮助,但还不够。

最近我们了解到可以将警报附加到日历提要中,因此为了尝试激发用户采取行动,我们还决定将警报附加到单个“过时”事件;每隔 3 小时重复两次的警报。这更有效,但对最终用户来说非常烦人。

所以,这就是问题所在。 我们可以在服务器上做些什么,当设备发出请求时,响应会向设备指示提要不再可用并且设备应该停止请求它?我们尝试过的其他一些事情包括:

  • 返回各种 HTTP 状态码(302、301、500 等)
  • 在 Feed 上设置很长的 TTL

这些似乎都没有任何效果。似乎应该有一种方法可以返回带有 HTTP 状态代码 410“Gone”的空响应,并且设备/程序应该知道该怎么做。任何/所有建议表示赞赏!

0 投票
2 回答
14131 浏览

icalendar - Webcal 和 WebDAV/CalDAV 有什么区别?

据我了解,CalDAV 是 WebDAV 的扩展,用于管理 iCalendar 订阅。

Webcal 是一个 URL 方案,它做同样的事情,但不是标准化的。

我就在这里?无论哪种方式都有什么优点/缺点?

0 投票
0 回答
364 浏览

javascript - 是否可以在 Javascript 中生成 ICS 文件,然后通过 webcal: url 传递它?

我知道可以生成一个 ICS 文件并提示用户通过 javascript 下载它:

https://github.com/nwcell/ics.js

并且可以设置指向 Internet 上托管的 ICS 文件的 webcal url,例如:

webcal://ical.mac.com/ical/US32Holidays.ics

但是是否有可能在没有服务器端干预的情况下为用户提供一个使用动态生成的 ICS 的 webcal url?我想在我的前端 javascript 应用程序中生成一个动态日历事件,并且理想情况下不涉及该过程中的后端。

0 投票
3 回答
30450 浏览

calendar - 在 Windows 10 邮件应用程序上订阅了日历?

如果您配置了 Exchange 服务器,Windows 10 邮件应用程序还会显示您的日历。知道是否可以添加订阅日历 - 即通过链接发送的共享日历webcal://...?我肯定在“新帐户”选项中或通过互联网搜索没有发现任何明显的东西

0 投票
1 回答
231 浏览

asp.net-web-api - 如何在 NancyFx、Web API 等中定义 webcal 路由?

我在南希有一条路线,目前返回一个 .ics 文件。但这是一条 http 路由,我希望它是 webcal,以便设备知道它是订阅并自动处理它。

如何让 nancy 响应 webcal 路线?

0 投票
0 回答
311 浏览

php - PHP:如何将服务器生成的 webcal 内容放入变量中?

我有这个链接。当放入浏览器时,它似乎会生成一个以当前日期命名的文件下载,然后下载该文件。

Google Calendar 可以使用此链接将日历事件检索到我自己的日历中,但我需要使用 PHP 解析日历。

我的问题不是制作解析器,但是当我在file_get_contents(). 它指出:

无法打开流:在....中找不到合适的包装器

我似乎无法解决这个问题,而且看起来,其他人还没有问过这个特定的问题。我只找到了一个关于 Facebook webcal 的信息,但也无济于事。

0 投票
1 回答
2557 浏览

java - 使用 Java 发布 iCalendar 提要

Microsoft Outlook 和其他日历客户端可以订阅“Internet 日历”。

对于 Outlook,它接受 URL(http: 或 webcal:)。正确配置后,Outlook 客户端中显示的“Internet 日历”将保持最新状态。

我想知道如何自己发布“互联网日历”。我正在使用 Java。我已经在使用iCal4j库创建“.ics 文件”事件。我模糊地假设我需要创建一个发送ics事件流的 servlet。

任何让我入门的示例或参考文档将不胜感激。

0 投票
1 回答
148 浏览

calendar - 如何创建一个每年重复三个月的日历事件?

我想在每个冬天每周都被提醒一些事情。是否可以使用 ical-/webcal-standard 和 Google Calender、Apple Calendar/iCal、Android Calender 或类似工具来实现?

(我对这个问题属于哪个子域进行了相当广泛的搜索,但结果尚无定论,SO 占优势)

0 投票
0 回答
346 浏览

symfony - webcal:// 而不是 Symfony2 中的 http://

我在这里阅读了如何修改 twig 中生成的 url。

我缺少的是路由方面:我可能需要 symfony 才能路由: webcal://www.mywebsite.com/calendar而不是http://www.mywebsite.com/calendar

能够以 ics 提要格式共享我的日历,以便 MS Outlook 或 Google 日历可以获取它。

我生成的 ics 文件得到了正确验证,如果我打开它,我可以在 Outlook 中看到它。在本地主机上尝试 MS Outlook 无法导入它(从 Internet 添加)。我真的需要 webcal 还是我还缺少其他东西?

编辑

尝试了schemes={ "webcal" }内部注释。它正确地吐出一个格式正确的 url,但 Outlook 仍然不喜欢它(如果我写“webcal://...”,Chrome 不会打开它,但如果我写“http://..”,则 url 得到更改为“webcal://..”,Chrome 告诉我它需要一个外部应用程序才能打开它。我选择了 Outlook,但不起作用:(

谢谢!

序列号