FullCalendar 無法與 Google Calendar SEC7120一起使用



我正在尝试将Google日历与FullCalendar集成。我按照 https://fullcalendar.io/docs/google-calendar 中的步骤填写了我的信息。

document.addEventListener('DOMContentLoaded', function() {
var calendarEl = document.getElementById('calendar');
var calendar = new FullCalendar.Calendar(calendarEl, {
aspectRatio: 4,
plugins: [ 'timeGrid' ,'googleCalendar', 'list'],
defaultView: 'listWeek',
googleCalendarApiKey: 'A...g',
eventSources:[                        
{
googleCalendarId: 'l...@gmail.com'//primary calendar
},
{
googleCalendarId: '7...nk@group.calendar.google.com',//second calendar
}],
header: {
left: 'prev,next today',
center: 'title',
right: ''
},
});
calendar.render();
});

但是,没有显示任何事件,控制台显示

SEC7120:[CORS] 源"file://"在"https://www.googleapis.com/calendar/v3/calendars/7jmaq...lts=9999"处的跨源资源的访问控制允许源响应标头中找不到"file://"。

单击提供的链接会得到以下结果:

{ "种类": "日历#事件", "etag": "\"...qe80g\", "摘要": "...", "更新": "2019-09-28T21:29:49.573Z", "时区": "...", "访问角色": "读取器", "默认提醒": [], "下一个同步令牌": "CIiX05...YAQ==", "项目": [ { "种类": "日历#事件", "etag": "\"31....9146000\", "id": "2do9...h04", "状态": "已确认", "htmlLink": "https://www.google.com/calendar/event?eid=MmR...tAZw", "已创建": "2019-09-28T21:29:49.000Z", "已更新": "2019-09-28T21:29:49.573Z", "摘要": "测试", "创建者": { "电子邮件": "l...@gmail.com" }, "组织者": { "电子邮件": "7...mnk@group.calendar.google.com", "显示名称": "...", "自我": 真 }, "开始": { "日期时间": "2019-09-28T17:00:00-04:00" }, "结束": { "日期时间": "2019-09-28T18:00:00-04:00" }, "iCalUID": "2...04@google.com", "序列": 0 } ]}

总而言之,日历工作正常,但无法获取任何事件信息。

这里的关键问题是错误消息的这一部分:

起源"file://">

您需要在http://https://上提供页面,然后它才能正常工作。

浏览器安全限制阻止使用file://协议在本地加载的文件(与 Web 服务器相反 - 即使该 Web 服务器在同一台计算机上运行(向远程站点发出 Ajax 请求。这使得某些类型的网络钓鱼攻击更加困难。

在您的机器上安装免费的网络服务器并以这种方式提供您的页面。

相关内容

  • 没有找到相关文章

最新更新