let url = "(InsertAsset(?customerID=(vmanagerappDelegate.cust_Id!(&assetTag=(self.txt_AssetTag.text! as String(&modelID=(modelObject(&statusID=(statusObject(&serial=(self.txt_Serial.text! as String(&assetName=(self.txt_AssetName.text! as String(&purchaseDate=(selectedPurchaseDate(&supplierID=(supplierObject(&purchaseCost=(purchaseCostObject(&warranty=(self.txt_Warranty.text! as String(¬es=(notesObject(&locationID=(locationObject(&ownerID=(ownerObject(&addUserID=(vmanagerappDelegate.userId
您可以像下面这样创建字典以在 Alamofire 中将参数作为字典发送:
var dicParam = Dictionary<String,AnyObject>()
dicParam[“customerID”] = vmanagerappDelegate.cust_Id!
dicParam[“assetTag”] = self.txt_AssetTag.text! as String
dicParam["modelID"] = modelObject
在Alamofire中,将上面的字典作为参数以及您的URL一起传递,如下所示:
Alamofire.request("Your URL", method: .post, parameters: dicParam, encoding: URLEncoding(destination: .queryString), headers: nil).responseJSON {
response in
switch response.result {
case .success:
print(response)
break
case .failure(let error):
print(error)
}
}
尝试创建一个二分法
let params:Dictionary<String, AnyObject> = ["customerID":vmanagerappDelegate.cust_Id!,"assetTag":self.txt_AssetTag.text,"modelID":modelObject] //similarly add all params to Dict
如果您想添加一些标题,也为它们创建 dicitonary 标题并传入Alamofire.request(.POST,url,parameters: params,headers:Header,encoding: .JSON)
发布请求示例
func remotePOSTServiceWithParameters(urlString : String , params : Dictionary<String, AnyObject> , callback:(data: Dictionary<String, AnyObject>?, error: NSError? ) -> Void) {
print("Request POST URL:(urlString) PARAMS:(params)")
Alamofire.request(.POST,urlString,parameters: params,encoding: .JSON)
.validate()
.responseJSON {
response in
guard response.result.error == nil else {
print("Error for POST :(urlString):(response.result.error!)")
//
callback(data: nil , error: response.result.error! )
return
}
if let value = response.result.value {
print("JSON: (value)")
if let result = value as? Dictionary<String, AnyObject> {
print("Response for POST :(urlString):(value)")
callback(data:result , error: nil )
}
}
}
}