gpt4 book ai didi

swift - AlamoFire POST 可以工作,但返回 NSURLErrorDomain 错误

转载 作者:行者123 更新时间:2023-11-30 11:54:50 24 4
gpt4 key购买 nike

我正在使用 AlamoFire 将 JSON 发布到我的 Web 服务,并且该发布成功运行,并且值已提交到数据库,但 AlamoFire 返回 NSURLErrorDomain,然后显示我的“提交失败”消息。我在下面的代码中做错了什么?

//AlamoFire POST
var request = URLRequest(url: NSURL.init(string: URL)! as URL)
request.httpMethod = "POST"
request.setValue("application/json", forHTTPHeaderField: "Content-Type")
request.timeoutInterval = 10 // secs
request.httpBody = try! JSONSerialization.data(withJSONObject: myJson, options: [])

Alamofire.request(request).responseJSON {
(response) in
log.info("HTTP RESPONSE: \(response.result)")
if response.result.isSuccess {
self.alertControllerMsg(msgStyle: UIAlertControllerStyle.alert,msgTitle: "Success", msgBody: "Update Delivered", cancelLbl: "", actionLbl: "Dismiss", complete: {
self.view.endEditing(true)
self.activityIndicator.stopAnimating()
self.sendBtn.isEnabled = true
})
} else if response.result.isFailure {
let error : Error = response.result.error!
log.error(error)
self.alertControllerMsg(msgStyle: UIAlertControllerStyle.alert,msgTitle: "Error", msgBody: "Update Failed. Please try again.", cancelLbl: "", actionLbl: "Dismiss", complete: {
self.activityIndicator.stopAnimating()
self.sendBtn.isEnabled = true
})
}
}

编辑:这是完整的错误消息:

Error Domain=NSURLErrorDomain Code=-1001 "The request timed out." UserInfo={NSUnderlyingError=0x170643540 {Error Domain=kCFErrorDomainCFNetwork Code=-1001 "(null)" UserInfo={_kCFStreamErrorCodeKey=-2102, _kCFStreamErrorDomainKey=4}}, NSErrorFailingURLStringKey=http://{{URL.REDACTED}}/odata/Updates, NSErrorFailingURLKey=http://{{URL.REDACTED}}/odata/Updates, _kCFStreamErrorDomainKey=4, _kCFStreamErrorCodeKey=-2102, NSLocalizedDescription=The request timed out.}

最佳答案

我发现问题实际上出在服务器端。除了 HTTP BODY 之外,Web 服务还接收 URL 参数。 Alamofire 不喜欢我将此参数附加到 URL 上。这一定是它的编码方式,因为类似的调用可以在 Fiddler 中工作,但不能通过 Alamofire 工作。我计划重新设计 Web 服务以删除查询字符串参数。

关于swift - AlamoFire POST 可以工作,但返回 NSURLErrorDomain 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47933413/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com