如何在 swift 中从 Google Calendar API 获取 JSON?

问题描述 投票:0回答:1

我想要做的是将 Google 日历中的数据同步到我的应用程序。

我现在可以使用Google+帐户登录我的应用程序,那么如何使用我的帐户ID和密码从日历中获取私有JSON数据?

ios swift google-calendar-api
1个回答
1
投票

我能够使用 Google Calendar API 通过 HTTP 请求检索 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()

就在应用程序和 Google 日历之间同步数据而言,您可以实现回调以通过 Google 日历 API 发出 PUT 请求来更新。例如,以下是回调函数的代码片段,用于发出 PUT 请求以与您的 Google 日历同步:

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
        }
    }
}

有许多可用的 Swift HTTP 包装器库。在我的示例中,我使用的是 Swift HTTP

© www.soinside.com 2019 - 2024. All rights reserved.