我正在尝试开发一个应用程序,它向NodeJS服务器(在localhost上)发送HTTP POST请求。我正在使用网络库'Alamofire'来尝试简化事情。
我的问题出现我尝试发送多个请求时,我设置了一个发送帖子请求的简单按钮。当我运行应用程序时,我可以单击按钮,看到它在我点击它时发送帖子请求,但仅限于前4个按钮按下/发布请求。
我的服务器可能没有正确设置,也没有发回响应或沿着那些行发送回应。
每次打开应用程序时我都会收到4个帖子 - 每次关闭并重新打开应用程序我都会得到另外4个。
当我重新启动服务器时也是如此。
我使用预先存在的应用程序(HTTP实用程序)对服务器进行了测试,看起来效果很好。
当我使用Alamofire时,我使用JSON编码,这会导致问题???
这是我的快速代码:
import UIKit
import Alamofire
class ViewController: UIViewController {
@IBAction func postBTN(sender: AnyObject) {
post(["xx":[10]])
}
override func viewDidLoad() {
super.viewDidLoad()
}
func post(postParrams: [String : AnyObject]) {
Alamofire.request(.POST, "http://10.0.0.10:3000", parameters: postParrams, encoding: .JSON)
}
}
更新***我在'Alamofire.request'下面添加了以下代码来打印回复数据:
.validate()
.responseJSON { response in
print(response.request)
print(response.response)
print(response.result)
switch response.result {
case .Success:
print("Validation Successful")
case .Failure(let error):
print("the error is", error)
}
}
打印的错误代码为:
the error is Error Domain=NSURLErrorDomain Code=-1001 "The request timed out." UserInfo={NSUnderlyingError=0x7fd5a3d0e170 {Error Domain=kCFErrorDomainCFNetwork Code=-1001 "(null)" UserInfo={_kCFStreamErrorCodeKey=-2102, _kCFStreamErrorDomainKey=4}}, NSErrorFailingURLStringKey=http://localhost:3000/, NSErrorFailingURLKey=http://localhost:3000/, _kCFStreamErrorDomainKey=4, _kCFStreamErrorCodeKey=-2102, NSLocalizedDescription=The request timed out.}
从此我收集到响应结果是'失败'并且有2个错误代码:Code = -1001,CodeKey = -2102