新值仅在 sendAsynchronousRequest 中可用 - Swift

2023-12-03

var arrayData: [String] = []

let bodyData = "parameter=test"

let URL: NSURL = NSURL(string: "Link to php file")
let request:NSMutableURLRequest = NSMutableURLRequest(URL:URL)
request.HTTPMethod = "POST"
request.HTTPBody = bodyData.dataUsingEncoding(NSUTF8StringEncoding);
NSURLConnection.sendAsynchronousRequest(request, queue: NSOperationQueue.mainQueue())
{
    (response, data, error) in
        var output = NSString(data: data, encoding: NSUTF8StringEncoding)

        self.arrayData = self.JSONParseArray(output)

        println(self.arrayData) //Print the result
}

println(self.arrayData) //Print nothing

看来新值仅在 sendsynchronousRequest 中可用

有没有办法使新值可以从 sendsynchronousRequest 中访问?


sendAsynchronousRequest顾名思义,是异步的。所以你的最后println在请求完成之前运行。完成处理程序运行后,新数据将可供所有读者(在此处理程序内部或外部)使用。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

新值仅在 sendAsynchronousRequest 中可用 - Swift 的相关文章

随机推荐