Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 如何从服务器使用阵列并在服务中显示_Ios_Arrays_Swift_Request_Mode - Fatal编程技术网

Ios 如何从服务器使用阵列并在服务中显示

Ios 如何从服务器使用阵列并在服务中显示,ios,arrays,swift,request,mode,Ios,Arrays,Swift,Request,Mode,我使用POST方法从服务器获得此响应 { "jsonrpc": "2.0", "id": null, "result": [ "alaa", "belal", "demo" "mohanad" ] } 如何将数据导入服务器并保存到模型中? 这是我使用阿拉莫菲尔的服务器请求 class servicedb: NSObject{ class func dbs (completion: @escaping (_ error:

我使用POST方法从服务器获得此响应

{
    "jsonrpc": "2.0",
    "id": null,
    "result": [
    "alaa",
    "belal",
    "demo"
    "mohanad"
    ]
}
如何将数据导入服务器并保存到模型中? 这是我使用阿拉莫菲尔的服务器请求

class servicedb: NSObject{

    class func dbs (completion: @escaping (_ error: Error?, _ db: ([Database]))->Void){
        let url = "http://176.58.117.249/web/database/list"
        let header = ["Content-Type" : "application/json"]


        Alamofire.request(url, method: .post, parameters: nil, encoding: URLEncoding.default, headers:header)
            .responseJSON{ response in
                switch response.result
                {
                case.failure(let error):
                    print (error)


                case .success(let value):
                    let json = JSON(value)
                    guard let results = json ["result"].array else
                    { return }

                    var dbs = [Database]()
                    for data in results {
                        guard let data = data.dictionary else {
                            return }

                        let datab = Database()
                        datab.result = data["result"]?.string ?? ""

                        dbs.append(datab)

                    }
                    completion(nil,dbs)

                }
        }
    }
}
我的数据模型是保存数据

class Database: NSObject {
    var id: Int = 0
    var result : String = ""
}
响应不会出现在我的web服务中,也不会在数据模型中存储数据。
提前感谢

在web服务中,将
参数
作为
nil
传递,然后提供文件管理器并作为
字符串传递
“{}”给出成功响应

您的web服务响应位于
[String]
中,因此您可以这样使用

class func dbs (completion: @escaping (_ error: Error?,  _ db: ([String]))->Void){
    let url = "http://176.58.117.249/web/database/list"
    let header: [String:String] = ["Content-Type" : "application/json"]

    let parameters = [:] as [String : Any]



    do {
        let postData = try JSONSerialization.data(withJSONObject: parameters, options: [])
        let urlStr = URL(string: url)
        let urlRequest = URLRequest(url: urlStr!)

        var request = try URLEncoding.queryString.encode(urlRequest, with: parameters)
        request.httpMethod = "POST"
        request.httpBody = postData as Data

        for headerValue in header{
            request.addValue(headerValue.value, forHTTPHeaderField: headerValue.key)
        }

        Alamofire.request(request).responseJSON{ response in
            switch response.result
            {
            case.failure(let error):
                print (error)


            case .success(let value):
                let json = JSON(value)
                guard let results = json ["result"].array else
                { return }

                var dbs = [String]()
                for data in results {
                    dbs.append(data.string ?? "")
                }
                completion(nil,dbs)

            }
        }
    }
    catch let error{
        print(error.localizedDescription)
    }
}