URLSession 数据任务 returns 无响应 - 找不到 404 页面
URLSession data task returns nil response - 404 page not found
我正在尝试使用 Swift 中的 URlSession
调用 https 请求。我没有收到错误消息,但收到的响应为零。
我试过在 plist 中添加 ATS。添加了 TLS 版本、NSIncludesSubdomains 密钥等。仍然不起作用。不确定可能是什么问题。有帮助吗?
下面是我的代码:
url = URL(string: "https://quickweb.support.qvalent.com/OnlinePaymentServlet3")
let urlRequest = URLRequest(url: url!, method: method, body: data.toEncodedData(), cachePolicy: .useProtocolCachePolicy)
let useMainThread = true
let configuration = URLSessionConfiguration.default
var queue: OperationQueue? = nil
if useMainThread {
queue = OperationQueue.main
}
let urlSession = URLSession(configuration: configuration, delegate: self, delegateQueue: queue)
urlSession.dataTask(with: urlRequest){ data, resonse, error in
if let error = error {
self.errorMessage += Constants.shared.dataErrorMsg+error.localizedDescription
onComplete(false,nil,self.errorMessage)
}else if let data = data{
self.parse(data: data, with: onComplete)
}
}.resume()
令人惊讶的是,我在 Objective C 年前完成了相同的调用,它绝对有效 fine.Trying 将其转换为 Xcode 9.3 中的 swift 4 失败。
当我打印响应数据时,它显示“404 页面未找到”
已解决。这与请求或 url 无关。客户期待一个已到位但未被调用的委托调用,因此它返回 404。URLSessionTaskDelegate 是关键。
我正在尝试使用 Swift 中的 URlSession
调用 https 请求。我没有收到错误消息,但收到的响应为零。
我试过在 plist 中添加 ATS。添加了 TLS 版本、NSIncludesSubdomains 密钥等。仍然不起作用。不确定可能是什么问题。有帮助吗?
下面是我的代码:
url = URL(string: "https://quickweb.support.qvalent.com/OnlinePaymentServlet3")
let urlRequest = URLRequest(url: url!, method: method, body: data.toEncodedData(), cachePolicy: .useProtocolCachePolicy)
let useMainThread = true
let configuration = URLSessionConfiguration.default
var queue: OperationQueue? = nil
if useMainThread {
queue = OperationQueue.main
}
let urlSession = URLSession(configuration: configuration, delegate: self, delegateQueue: queue)
urlSession.dataTask(with: urlRequest){ data, resonse, error in
if let error = error {
self.errorMessage += Constants.shared.dataErrorMsg+error.localizedDescription
onComplete(false,nil,self.errorMessage)
}else if let data = data{
self.parse(data: data, with: onComplete)
}
}.resume()
令人惊讶的是,我在 Objective C 年前完成了相同的调用,它绝对有效 fine.Trying 将其转换为 Xcode 9.3 中的 swift 4 失败。
当我打印响应数据时,它显示“404 页面未找到”
已解决。这与请求或 url 无关。客户期待一个已到位但未被调用的委托调用,因此它返回 404。URLSessionTaskDelegate 是关键。