Alamofire发布请求问题

时间:2017-05-31 06:13:58

标签: swift3 alamofire xcode8

   let parameters = [
        "checkout": [
            "email": "john.smith@example.com",
            "line_items": [
                "variant_id": 31342168513,
                "quantity": 1
                ],
            "shipping_address": [
                "first_name": "John",
                "last_name": "Smith",
                "address1": "126 York St.",
                "city": "Ottawa",
                "province_code": "ON",
                "country_code": "CA",
                "phone": "(123)456-7890",
                "zip": "K1N 5T5"
            ]
        ]
    ]

    let urlString = "https://\(Key):\(Password)@sapphireonline-staging.myshopify.com/admin/checkouts.json"
    let headers: HTTPHeaders = [
        "X-Shopify-Storefront-Access-Token": "5681ded39ead3fa6f4594ad0981367",
        "Content-Type": "application/json"
    ]

    Alamofire.request(urlString, method:.post, parameters: parameters,encoding: JSONEncoding.default, headers:headers).responseJSON { response in
        switch response.result {
        case .success:

            print("\n\n Alamofire Response . resposne :- ", response)
        case .failure(let error):

            print("\n\n Alamofire Failure :- ",error as NSError)
        }
    }

为什么以下代码会给我错误:

Alamofire失败: - 错误域= Alamofire.AFError代码= 4“由于错误,无法序列化JSON: 无法读取数据,因为格式不正确。“

1 个答案:

答案 0 :(得分:3)

服务器的响应不是JSON。也许你收到了错误回复。我建议您检查响应错误代码或使用curl尝试相同的请求。