我对 Swift 相当陌生,正在尝试发出 HTTP 请求。我尝试了很多想法在这个堆栈溢出问题中 https://stackoverflow.com/questions/24016142/how-to-make-an-http-request-in-swift,但是在操场上运行时都会出现错误;我相信这是因为它们都在 Swift 1.0-2.0 中。
如何在 Swift 中发出 HTTP 请求3?
Update我尝试了第一个解决方案这个答案 https://stackoverflow.com/a/24016254/5700898并且,在完成 Xcode 建议的“Fix-its”后,我遇到了四个错误:
您的代码有几个问题:
- 默认情况下,您的应用程序无法连接到不安全(即 HTTP)站点。这是一项称为“应用程序传输安全”的功能。您需要在应用程序中破例
Info.plist
文件以连接到 HTTP 站点。
- This:
dataTask(urlwith: ! as URL)
。您想用感叹号打开什么(!
)?变量名是什么?
Swift 2 和 3 之间的许多类名称发生了变化,因此您找到的这些答案可能不适用。下面是一个连接到的示例httpbin.org https://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
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)