我对Swift相当陌生,并且正在尝试发出HTTP请求。我尝试了这个“堆栈溢出”问题中的许多想法,但是所有这些想法在操场上运行时都会导致错误。我相信这是因为它们都在Swift 1.0-2.0中。
如何在Swift 3中发出HTTP请求?
更新我尝试了此答案中提出的第一个解决方案,在完成Xcode建议的“修复”之后,我遇到了四个错误:
您的代码有几个问题:
Info.plist
文件中设置例外情况才能连接到HTTP网站。dataTask(urlwith: ! as URL)
。您正在尝试用感叹号(!
)打开包装吗?什么是变量名?在Swift 2和3之间,许多类名已更改,因此您找到的答案可能不适用。以下是连接到httpbin.org以获取您的IP地址的示例:
import PlaygroundSupport
import Foundation
let url = URL(string: "https://httpbin.org/ip")
let task = URLSession.shared.dataTask(with: url!) { data, response, error in
guard error == nil else {
print(error!)
return
}
guard let data = data else {
print("Data is empty")
return
}
let json = try! JSONSerialization.jsonObject(with: data, options: [])
print(json)
}
task.resume()
PlaygroundPage.current.needsIndefiniteExecution = true
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句