Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/113.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 邮寄请求中的Alamofire Bool将作为';正确';_Ios_Swift_Post_Alamofire - Fatal编程技术网

Ios 邮寄请求中的Alamofire Bool将作为';正确';

Ios 邮寄请求中的Alamofire Bool将作为';正确';,ios,swift,post,alamofire,Ios,Swift,Post,Alamofire,我试图在POST请求中发送一个Swift Bool,但是服务器需要一个数字,但是请求HTTP正文显示Bool是作为“true”发送的 我正在创建如下参数: let params: [String: AnyObject] = [ "quantity": quantity, // Int "amount": totalAmount, // Double "use_credit": NSNumber(bool: useCredit

我试图在POST请求中发送一个Swift Bool,但是服务器需要一个数字,但是请求HTTP正文显示Bool是作为“true”发送的

我正在创建如下参数:

let params: [String: AnyObject] = [
            "quantity": quantity, // Int
            "amount": totalAmount, // Double
            "use_credit": NSNumber(bool: useCredit) // Bool useCredit
        ]
func postRequest(url: String, params: [String : AnyObject]?, headers: [String : String]?, completion: APICompletionHandler) {
        self.manager.request(.POST, baseURL.stringByAppendingString(url), parameters: params, encoding: .JSON, headers: headers).responseJSON(completionHandler: { response -> Void in
            switch response.result {
            case .Success(let data):
                completion(json: JSON(data), error: nil)
            case .Failure(let error):
                completion(json: nil, error: error)
            }
        })
    }
post请求如下所示:

let params: [String: AnyObject] = [
            "quantity": quantity, // Int
            "amount": totalAmount, // Double
            "use_credit": NSNumber(bool: useCredit) // Bool useCredit
        ]
func postRequest(url: String, params: [String : AnyObject]?, headers: [String : String]?, completion: APICompletionHandler) {
        self.manager.request(.POST, baseURL.stringByAppendingString(url), parameters: params, encoding: .JSON, headers: headers).responseJSON(completionHandler: { response -> Void in
            switch response.result {
            case .Success(let data):
                completion(json: JSON(data), error: nil)
            case .Failure(let error):
                completion(json: nil, error: error)
            }
        })
    }
在控制台中打印HTTP响应主体时,我得到以下信息:

{\"use_credit\":true,\"amount\":15,\"quantity\":1,\"event_id\":30}

你能不能只
“use_credit”:Int(useccredit)
?如果你把到达的数据作为字符串发布,那么在后端告诉你改变类型cast@Anbu.Karthik我不认为服务器端应该进行强制转换,我不明白为什么Alamofire会将其更改为true,尽管我将其转换为数字。显然,但是:在对参数进行编码时,您确定
useCredit
false