2015-02-24 140 views
0

你好我嘗試同步谷歌日曆與本地日曆谷歌日曆同步令牌到期

我目前的設置是這樣的

我通過谷歌登錄並獲得主日曆事件和本地存儲,我也保存谷歌在最後一頁提供的同步令牌。

因此,我創建了一個通道來觀看日曆,它每次發生日曆中的變化時向我發送通知,但是我想要的是如果我再次發送請求,它只是說令牌已過期,我要如何獲取已更改的數據。解決這個問題。

我使用on Rails和谷歌API寶石紅寶石

謝謝

+0

您是否收到410錯誤,當您使用同步令牌?如果「是」,則客戶端應該清除其存儲空間,並且在沒有任何syncToken的情況下執行完全同步。以下是鏈接https://developers.google.com/google-apps/calendar/v3/sync – SGC 2015-02-24 18:59:46

+0

通知只會告訴您有變化。爲了檢索已更改的數據,您需要使用您在上次events.list()請求中獲得的同步令牌。 – luc 2015-03-20 23:23:24

回答

0

訪問令牌過期。您需要在首次授予授權後保存刷新令牌,以便在向API發出請求時可以要求新的訪問令牌。我寫了一篇詳細的博客文章在這裏:http://www.geekytidbits.com/google-calendar-api-from-ruby/

例如:

#First time authorization 
auth_client.code = "authorization code goes here" 
auth_client.fetch_access_token! 
#Save auth_client.refresh_token now! 

#Subsequent requests 
auth_client.refresh_token = #grab refresh token from where you saved it 
auth_client.fetch_access_token! 
#You should now have a fresh access token