FullCalendar: отображать события из ПУБЛИЧНЫХ календарей Google (например, праздники в США) без ключа API.

Мой веб-сайт предоставил пользователям возможность указать свой собственный URL-адрес канала gcal, который я показывал с помощью полного календаря вместе с событиями, которые они создали.

calendarUrl = "link to public calendar url"

$('#calendar').fullCalendar({
    eventSources: [      
        {
          url: calendarUrl               
        },
        {
          url: "/user-events"
        }      
    ]    
});

Сейчас конечно это не работает. Теперь для этого требуется googleCalendarApiKey. Я не ожидаю, что пользователи, не разбирающиеся в технологиях, создадут проект с помощью консоли разработчика Google и предоставят ключ API. Также как отображать события из общедоступных календарей, например, праздники в США. Как получить ключ API для этого календаря.

Похоже, должен быть способ отображать события из ПУБЛИЧНЫХ календарей Google без ключа API.


person anu    schedule 14.12.2014    source источник


Ответы (2)


Вот что сработало для меня:

eventSource = {
    googleCalendarApiKey:'xxx',
    url: 'https://www.googleapis.com/calendar/v3/calendars/usa__en%40holiday.calendar.google.com/events?key=xxx',
    className: 'gcal-event', // an option!
    currentTimezone: 'America/Chicago' // an option!
  }
person Roman K    schedule 20.08.2015

Ответ найден в Как чтобы определить, к какому календарю подключаться с помощью службы Google Calendar API v3

Вам нужен собственный ключ для отображения любого общедоступного календаря, а не их ключ!! Я обнаружил, что у меня работает ключ для серверных приложений, а не ключ для браузеров.

$('#calendar').fullCalendar({
  googleCalendarApiKey: "<key for server apps>",
  eventSources: [      
    {
      googleCalendarId: "email of public calendar"               
    }      
  ]    
});
person anu    schedule 19.12.2014