我刚刚开始使用Swift 2.0开发应用程序,当我编写一个向网页发送POST请求的函数并返回网页的响应时,我遇到了一个名为task的变量问题,据称发送请求。今天早些时候它正在工作,我确实改变了以前的一切,看看是否有什么我做错了但是我无法弄明白。
给我带来问题的部分如下:
let task = NSURLSession.sharedSession().dataTaskWithRequest(request){
data,response,error in
if(data == nil){
print("No response received")
}
let responseString = NSString(data: data!, encoding: NSUTF8StringEncoding)
if error != nil{
print("Error=\(error)")
return
}
print("response = \(response)")
print("responseString = \(responseString)")
}
由于某些原因,总是让整个事情在控制台中报告“(lldb)”。
您可以在此处查看“功能”的其余代码(即使它甚至还不是功能):http://pastebin.com/DfT6LbCc
如果你知道为什么我的代码不能正常工作,如果你能让我知道,我将不胜感激!
提前致谢!
答案 0 :(得分:1)
在几乎所有情况下,你强行打开一个可选项,你做错了什么。试试这个:
let task = NSURLSession.sharedSession().dataTaskWithRequest(request){
(data,response,error) in
guard let data = data else { print("No response received"); return }
let responseString = NSString(data: data, encoding: NSUTF8StringEncoding)
if error != nil {
print("Error=\(error)")
return
}
print("response = \(response)")
print("responseString = \(responseString)")
}