Swift解析http请求返回域错误

Swift解析http请求返回域错误,swift,http,post,swift3,Swift,Http,Post,Swift3,好的,我试图发出post请求,但是当我试图解析数据时,我总是得到一个错误域代码=3840。 在本例中,它显示了请求-响应的样子。 这是我的代码: let parameters = ["txt": "כאב גרון","usr": "","pass": "" ,"ktivmale": false] as [String : Any] guard let url = URL(string: "http://www.nakdan.com/GetResult.aspx") else { re

好的,我试图发出post请求,但是当我试图解析数据时,我总是得到一个错误域代码=3840。 在本例中,它显示了请求-响应的样子。 这是我的代码:

let parameters =  ["txt": "כאב גרון","usr": "","pass": "" ,"ktivmale": false] as [String : Any]
    guard let url = URL(string: "http://www.nakdan.com/GetResult.aspx") else { return }
    var request = URLRequest(url: url)
    request.httpMethod = "POST"
    request.addValue("application/json", forHTTPHeaderField: "Content-Type")
    request.addValue("text/xml; charset=utf-8", forHTTPHeaderField: "Content-Type")
    guard let httpBody = try? JSONSerialization.data(withJSONObject: parameters, options: []) else { return }
    request.httpBody = httpBody

    let task = URLSession.shared.dataTask(with: request as URLRequest){
        data,response, error in

        print(response!)
        if error != nil{
            print("error")
            return
        }
        do {
            let json = try JSONSerialization.jsonObject(with: data!, options: [])
            DispatchQueue.main.async(execute: { () -> Void in
                print(json)
                SVProgressHUD.dismiss()
            })
        } catch {
            print(error)
            SVProgressHUD.dismiss()
            SVProgressHUD.showError(withStatus: "Connection Failed.")

        }
    }

    task.resume()

从您的链接中,响应是
#שםזיייאיסס㪠נים
这是XML,而不是JSON。因此,
JSONSerialization.jsonObject(with:options:)
失败并抛出错误是很正常的。那么我该怎么做呢?要么服务器允许使用一些参数或头来响应JSON,只需修复该部分,要么需要解析XML(例如使用XMLParser,或者任何执行该操作的库)。这是两个完全不同的解析。搜索它;)我还没有找到适合我的东西。。你能给我举个例子吗?从你的链接来看,答案是
שםזיייייססמ㪠נים
这是XML,不是JSON。因此,
JSONSerialization.jsonObject(with:options:)
失败并抛出错误是很正常的。那么我该怎么做呢?要么服务器允许使用一些参数或头来响应JSON,只需修复该部分,要么需要解析XML(例如使用XMLParser,或者任何执行该操作的库)。这是两个完全不同的解析。搜索它;)我还没有找到适合我的东西。。你能给我举个例子吗?