通过API创建的事件未在打印中列出

时间:2019-04-11 03:30:13

标签: google-calendar-api

我已经用我的gmail帐户创建了一个Google日历,并且希望在我的网站上显示该日历。

与该日历有关的所有事件均使用.Net库通过Google日历API插入。

它显示网站上的所有事件。但是当我单击打印时,所有事件都不会显示在打印预览中。

调用插入事件API时是否缺少任何参数?

1 个答案:

答案 0 :(得分:0)

我在Chrome扩展程序中创建的事件遇到此问题。我将为您保留令牌的代码,但是我认为创建事件没有任何问题,但拒绝打印就足够了。

期望的行为:创建可以打印的事件。 特定错误:事件已创建,但无法打印。 代码:

var copyInit = {
                            'method': 'POST',
                            'async': true,
                            'headers': {
                                'Authorization': 'Bearer ' + Items.access_token,
                                'Content-Type': 'application/json'
                            },
                            'contentType': 'json',
                            'body': dataJson
                        };

dataJson:

"{"start":{"date":"2019-04-22"},"end":{"date":"2019-04-22"},"summary":"test"}"

API调用:

            var url = 'https://www.googleapis.com/calendar/v3/calendars/' + calId + '/events?key=AIzaSyDfX9-blah9KoxzvGu3IzA1zu0oDQ-cJfw';
        fetch(url, copyInit)

经过反复的摸索,事实证明,尽管Google Calendar API允许您使用全天事件的相同开始日期和结束日期来创建全天事件(使用YYYY-MM-DD),但此类事件无法打印,并且共享时的结束日期早于开始日期...

解决方案是将第二天用作全天活动的结束日期:

"{"start":{"date":"2019-04-22"},"end":{"date":"2019-04-23"},"summary":"works!"}"