gpt4 book ai didi

ios - 适用于 iOS Swift 的 Google 日历 API

转载 作者:可可西里 更新时间:2023-11-01 05:59:49 27 4
gpt4 key购买 nike

我一直在开发一个应用程序,使用 Google Calendar API 从 Google Calendar 中检索事件。他们在 2018 年 5 月在网站上有一个很好的程序和快速代码,我让它在我的应用程序中运行。通过该过程,我能够将 Google 日历中的事件检索到我的应用程序中。现在,我想在我的应用程序中创建一个事件或更改一个事件并将其导入到 Google 日历中。访问 Google Calendar API 网站已完全更改并替换为适用于 iOS 的 G Suite API。我无法在互联网上找到任何与旧程序相关的信息。任何使用 Google Calendar API 的人都可以提供帮助吗?关于如何使用新事件或事件更改更新 Google Calendar API 的任何想法?

最佳答案

关于您最初的问题,将事件写入 Google 日历,我可以使用以下功能:

func writetoGC(token:String, startTime: String, endTime: String, summary: String, description: String) {

let url = URL(string: "https://www.googleapis.com/calendar/v3/calendars/{YOUR CALENDAR ID HERE}/events")

let summary1 = confirmationCode + "; " + summary

let session = URLSession.shared
print(session)
var request = NSMutableURLRequest(url: url!)
request.setValue("Bearer \(token)", forHTTPHeaderField: "Authorization")
request.httpMethod = "POST"
print(request)
// token, startTime, endTime, summary, description

var myHttpBody: Data = """
{
"end": {
"dateTime": "\(endTime)",
"timeZone": "America/Chicago"
},
"start": {
"dateTime": "\(startTime)",
"timeZone": "America/Chicago"
},
"summary": "\(summary1)",
"description": "\(description)"
}
""".data(using: .utf8)! as Data
do {
request.httpBody = myHttpBody
} catch let error {
print(error.localizedDescription)
}

request.addValue("application/json", forHTTPHeaderField: "Content-Type")

print("Request: ")
print(request.description)
print(request.allHTTPHeaderFields)
print("Body is:")
print(request.httpBody)

let task = session.dataTask(with: request as URLRequest, completionHandler: { data, response, error in

guard error == nil else {
return
}

guard let data = data else {
return
}
sleep(1)
do {
//create json object from data
if let json = try JSONSerialization.jsonObject(with: data, options: .mutableContainers) as? [String: Any] {
print("Response is:")
print(json)
print("Description:")
print(json.description)
print("Debug Description:")
print(json.debugDescription)

// handle json...
}
} catch let error {
print("Error during Serialization:")
print(error.localizedDescription)
}
})
task.resume()

//verifyEntry()
}

所以在这段代码中,除了事件摘要之外,我还传递了一个确认代码。确认码是我自己生成的。除非您在摘要中需要确认代码,否则您不需要该部分代码。如您所见,我已经获得了我的 OAuth 2.0 token 并将其输入到函数中。

至于编辑事件,修改上面的代码来改变一个事件应该不难。

关于ios - 适用于 iOS Swift 的 Google 日历 API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51271326/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com