1 回答

TA貢獻1854條經驗 獲得超8個贊
最后,我意識到為什么我只能打五個電話給 Google?這大大加快了速度。以前需要 5 - 6 秒,現在需要 900 毫秒 - 1400 毫秒。
我只是取了第一個間隔的第一個日期和最后一個間隔的最后一個日期,并要求谷歌給我該范圍內的所有忙碌細節。
if len(sc.Intervals) > 0 {
dStartResult, _, err:= getDateStartAndEnd(sc.Intervals[0])
if err != nil {
log.Error(err)
}
_, dEndResultLast, err:= getDateStartAndEnd(sc.Intervals[len(sc.Intervals)-1])
if err != nil {
log.Error(err)
}
//0. build search criteria
var query = events.SearchCriteria{
Email: sc.Owner.Email,
FreeBussyQuery: calendar.FreeBusyRequest{
TimeMin: dStartResult.Format(time.RFC3339),
TimeMax: dEndResultLast.Format(time.RFC3339),
},
}
isFree, err := calendarService.Freebusy.Query(setCalendarId(query)).Do()
if err != nil {
log.Error(err)
}
for _, i := range sc.Intervals {
....
//Do some magic to get the free intervals
- 1 回答
- 0 關注
- 137 瀏覽
添加回答
舉報