swift - 在 Alamofire PUT 请求中传递一个整数作为参数

标签 swift rest alamofire put

所以我正在尝试使用 Alamofire 执行 PUT 请求,我需要一个整数参数(不是对象)。 请求向数据库发送一个 id,查询对数据库中具有该 id 的对象进行更新。 alamofire 中的 Parameters 对象似乎只接受对象:

var parameters: Parameters = ["key" : "value"]

有什么方法可以不使用对象只发送一个整数吗? 当我使用上面的方法时,我不断收到的错误是:

nested exception is com.fasterxml.jackson.databind.JsonMappingException: Can not deserialize instance of int out of START_OBJECT token

我假设这意味着我在应该传递一个 int 而不是传递一个对象。

这是我的要求:

Alamofire.request(url, method: .put, parameters: parameters, encoding: JSONEncoding.default, headers: nil).response{ response in
        if response.response?.statusCode == 200 {
            // pass
        }else{
            // fail
        }
        completionHandler((response.response?.statusCode)!)
    }

我似乎无法在网上找到任何与我们有关的示例。

最佳答案

如果您提供有关将请求发送到何处的更多信息,那么我可以测试我的解决方案以查看它是否有效。但你可以试试这个。

let url = "YOUR_URL"

let yourData = "WHATEVER CUSTOM VAL YOU WANT TO PASS"

var request = URLRequest(url: URL(string: url)!)
request.httpMethod = "PUT"
//request.setValue("application/json", forHTTPHeaderField: "Content-Type") //This is if you want to have headers. But it doesn't look like you need them. 

request.httpBody  = yourData
/*
do {
    request.httpBody  = try JSONSerialization.data(withJSONObject: yourData)
} catch {
    print("JSON serialization failed:  \(error)")
}
*/
Alamofire.request(request).responseJSON {(response) in
    if response.response?.statusCode == 200 {
        print ("pass")
    }else{
        print ("fail")
    }
    completionHandler((response.response?.statusCode)!)

    /*
    switch response.result {
    case .success(let value):
        print ("success: \(value)")
    case .failure(let error):
        print("error: \(error)")
    }
    */
}

关于swift - 在 Alamofire PUT 请求中传递一个整数作为参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47577977/

相关文章:

objective-c - 是否可以从 objective-c 文件访问 Swift 全局变量?

ios - 如何在 tableview swift 中追加行?

swift - 数组搜索功能在 Swift 中不起作用

ios - 为什么我无法保存应用内购买?

class - Swift 和使用类扩展

javascript - 如何在 Node.js REST API 中处理非传统查询

rest - 用于连接 REST API 的 NSUrlConnection - 针对 iOS4 和 iOS 5 的 XCode 4.2

android - 使用一份图像和一份 json 创建 Android REST 多部分请求

ios - 如何继续检查我的 Swift 应用程序是否有互联网连接?

ios - Swift (iOS),等待所有图片下载完成再返回