gpt4 book ai didi

swift - 警报控制消息和 NSURLSession

转载 作者:行者123 更新时间:2023-11-30 13:14:17 29 4
gpt4 key购买 nike

我是这方面的新手,但过去常常在这里搜索特定的东西,并且由于我找不到特定的答案,也许这里有人可以提供帮助。

我基本上是在学习和构建一个应用程序。

目前我已经构建登录、注册 View Controller 等。 使用php和mysql服务器。

因为我正在使用并通过堆栈溢出一点一点地获取

我遇到了警报控制消息问题和 NSURLConnection 问题

现在我知道 NSURLConnection 已被 NSURLSession 取代但我无法实现它,很难解决这个问题。

我的代码如下:

let request:NSMutableURLRequest = NSMutableURLRequest(URL: url)
request.HTTPMethod = "POST"
request.HTTPBody = postData
request.setValue(postLength as String, forHTTPHeaderField: "Content-Length")
request.setValue("application/x-www-form-urlencoded", forHTTPHeaderField: "Content-Type")
request.setValue("application/json", forHTTPHeaderField: "Accept")

var reponseError: NSError?
var response: NSURLResponse?

var urlData: NSData?
do {
urlData = try NSURLConnection.sendSynchronousRequest(request, returningResponse:&response)
} catch let error as NSError {
reponseError = error
urlData = nil
}

这给了我这个问题

sendSynchronousRequest(_:returningResponse:)' was deprecated in iOS 9.0: Use [NSURLSession dataTaskWithRequest:completionHandler:] (see NSURLSession.h

我如何实现它以与 NSURLSession 一起使用?

第二个问题是打开警报消息

alertView.delegate = self 是问题,我尝试了几种不同的方法,例如替换alertView,但它不起作用,我尝试了alertController 等,但没有任何效果:

        if let error = reponseError {
alertController.message = (error.localizedDescription)
}

alertView.delegate = self
alertController.addAction(OKAction)
self.presentViewController(alertController, animated: true) { }
}
} catch {
let alertController:UIAlertController = UIAlertController(title: "Sign up Failed", message: "Server Error", preferredStyle: .Alert)
let OKAction = UIAlertAction(title: "OK", style: .Default) { (action) in }
alertController.addAction(OKAction)
self.presentViewController(alertController, animated: true) { }
}

问题是:

Use of unresolved identifier 'alertView'

它位于一个名为 signup.VC 的 Swift 文件中。

最佳答案

不要使用同步请求,而是创建一个异步请求,并在完成处理程序 block 中,将当前出现在上面的 catch block 末尾之后的所有代码放入其中,以便它在请求完成后执行。

我不知道你的第二个问题,因为你没有包含声明alertView变量的代码。

关于swift - 警报控制消息和 NSURLSession,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38412371/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com