Mar*_*rat 7 xcode ios swift swift3 xcode8
我是iOS的初学者.我搜索过网页,找不到可以解决问题的答案.坚持并且不知道该怎么做以及如何搜索解决方案.
我正在按照基于Swift 2的教程进行操作.以下方法显示错误.
func downloadBooks(bookTitle: String) {
let stringURL = "GET https://www.googleapis.com/books/v1/volumes?q=\(bookTitle)"
guard let URL = URL(string: stringURL) else {
print("url problems")
return
}
let urlRequest = NSMutableURLRequest(url: URL)
let session = URLSession.shared
let task = session.dataTask(with: urlRequest) { (data: Data?, response: URLResponse?, error: Error?) in
}
task.resume()
}
Run Code Online (Sandbox Code Playgroud)
我做了Xcode建议的所有调整,但没有进一步的提示.
而且,教程中的原始代码部分是这样的:
guard let URL = NSURL(string: stringURL) else {
print("url problems")
return
}
Run Code Online (Sandbox Code Playgroud)
然后Xcode建议添加as URL如下:
let urlRequest = NSMutableURLRequest(url: URL as URL)
Run Code Online (Sandbox Code Playgroud)
这两个版本都没有显示错误.那么区别是什么呢?我应该使用哪一个?
我真的很感激任何帮助!
vad*_*ian 13
在Swift 3中,编译器需要本机 URLRequest
let urlRequest = URLRequest(url: url) // use a lowercase variable name, URL is a native struct in Swift 3
Run Code Online (Sandbox Code Playgroud)
但是使用您的特定语法,您甚至不需要请求
let task = session.dataTask(with: url) { (data: Data?, response: URLResponse?, error: Error?) in ...
Run Code Online (Sandbox Code Playgroud)
也不是注释
let task = session.dataTask(with: url) { (data, response, error) in ...
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5265 次 |
| 最近记录: |