我对Swift非常陌生。
我想为我的教育应用程序创建类似API的东西。
我有这段代码:
static func getFilm(filmID: Int) -> String {
print("getFilm")
let url = URL(string: "https://api.kinopoisk.cf/getFilm?filmID=\(filmID)")!
var request = URLRequest(url: url)
var returnData: String = ""
let task = URLSession.shared.dataTask(with: request) { data, response, error in
if var responseVar = response, var dataVar = data {
print(responseVar)
returnData = String(data: dataVar, encoding: .utf8)
} else {
print(error)
}
}
task.resume()
return returnData
}
在这一行中,我尝试将Data转换为String:
returnData = String(data: dataVar, encoding: .utf8)
Swift编译器给出了一个错误,并将此行更改为:
returnData = String(data: dataVar, encoding: .utf8)!
当我执行这行时,我得到一个空的returnData变量。如果我使用基本的示例行:
print(String(data: data, encoding: .utf8))
一切都正常,我可以在XCode控制台中看到data。那么,我该如何将Data转换为String?