2015-04-08 35 views
0

我想要做的是將數據從谷歌日曆同步到我的應用程序。如何從swift中的谷歌日曆API獲取JSON?

我現在可以用Google +帳戶登錄我的應用程序,那麼我如何使用我的帳戶ID和密碼從日曆中獲取私人JSON數據?

在此先感謝。

回答

1

我能夠通過HTTP請求使用Google Calendar API檢索JSON數據。作爲一個例子,這裏是一個代碼段提出要求取回我的日曆元數據:您的應用程序和谷歌日曆之間

let url = NSURL(string: "https://www.googleapis.com/calendar/v3/calendars/calendarId") 
let task = NSURLSession.sharedSession().dataTaskWithURL(url!) {(data, response, error) in 
    let dataAsNSString = NSString(data: data, encoding: NSUTF8StringEncoding) 
    // implement your app logic 
} 
task.resume() 

至於同步數據,可以實現回調做PUT請求,通過谷歌更新日曆API。作爲一個例子,這裏是一個回調函數的代碼片斷做出PUT請求同步瓦特/你的谷歌日曆:

func updateUserDataToGoogleCalendar(calendarId: String) { 
    let url = NSURL(string:"https://www.googleapis.com/calendar/v3/calendars/calendarId") 
    let dataAsString = "sync data" 
    var data: NSData? = dataAsString.dataUsingEncoding(NSUTF8StringEncoding) 
    var headers = Dictionary<String, String>() // specify any headers 

    Http().put(url!, headers: headers, data:data!) { (result) in   
    if result.success { 
     if let json: AnyObject = result.jsonObject { 
      // implement your app logic 
     } 
    } 
} 

有很多可用的斯威夫特HTTP包裝庫。在我的例子中,我使用Swift HTTP

+0

hiii @sun能否幫助我如何整合谷歌日曆 –