Arrays Swift JSON“;邮政「;请求数据数组

Arrays Swift JSON“;邮政「;请求数据数组,arrays,json,swift,post,struct,Arrays,Json,Swift,Post,Struct,我无法从数据输出中删除数组,我尝试用从数据中获得的引号数定义一个结构并尝试输入它,但我不能,因为我必须先从JSON响应中删除数组括号。已经在这里停留了一段时间,第一次使用JSON POST类型 if let requestUrl = url { // Prepare URL Request Object var request = URLRequest(url: requestUrl) request.httpMethod

我无法从数据输出中删除数组,我尝试用从数据中获得的引号数定义一个结构并尝试输入它,但我不能,因为我必须先从JSON响应中删除数组括号。已经在这里停留了一段时间,第一次使用JSON POST类型

if let requestUrl = url {
            // Prepare URL Request Object
            var request = URLRequest(url: requestUrl)
            request.httpMethod = "POST"
            // HTTP Request Parameters which will be sent in HTTP Request Body
            let postString = ["freq": freqId]
            // Set HTTP Request Body
            request.httpBody = try? JSONSerialization.data(withJSONObject: postString, options: [] );
            // Perform HTTP Request
            let task = URLSession.shared.dataTask(with: request) { (data, response, error) in
                // Check for Error
                if let error = error {
                    self.delegate?.didGetError(error: error)
                    return
                }
                // Convert HTTP Response Data to a String
                if let data = data, let dataString = String(data: data, encoding: .utf8) {
                    print(dataString)
                    let quotes = DataModel(quotes: dataString)
                    self.delegate?.didGetData(data: quotes)
                }
            }
            task.resume()
        }
        else {
            fatalError()
        } 
答复:

["10 years from now , you'll look back and say I'm glad I started trading","I always define my risk and I don't have to worry about it","For trading success , there's a realization that when you don't care , you do well and when you try too hard , you don't .","Necessity never made a good bargain.","When a falling stock becomes a screaming buy because it cannot conceivably drop further , try to buy it thirty percent lower .","There are infinite number of ways to make money in markets & in life , Find ONE that works for you.","Get comfortable with being uncomfortable !.","The markets are always changing , and they are always the same.","You can't control how you feel . But you can always to choose how you act !","If what you're looking for is an excuse you'll find one !"]

看起来响应是一个数组而不是字符串,因此将处理
数据的方法更改为

guard let data = data else {
    //error handling...
    return
}

do {
    if let array = try JSONSerialization.jsonObject(with: data) as? [String] {
        let quotes = DataModel(quotes: array)
        self.delegate?.didGetData(data: quotes)
    }
} catch {
    print(error)
    //error handling...
}
这假设可以使用数组初始化
DataModel
,如果不能初始化,则需要执行以下操作以首先将数组的元素合并到字符串中

let string = array.joined(separator: " ")

查看屏幕截图,我怀疑这并不是那么容易,但处理数组内容的最佳方法超出了这个问题

欢迎使用StackOverflow。请将Post代码创建为文本而不是图像,可以搜索文本并将其复制/粘贴到编辑器/IDE中,以供需要帮助的人使用。您已将响应转换为stringify JSON。我想您应该根据需要将其转换为像字典或数组这样的Swift数据类型。