gpt4 book ai didi

json - Alamofire上传参数如何添加Int值

转载 作者:IT王子 更新时间:2023-10-29 05:41:17 27 4
gpt4 key购买 nike

我想将 Int 值添加到 multipartFormData:

Alamofire.upload(.POST,
url,
headers: headers,
multipartFormData: { multipartFormData in
//add some jpg image
//add other vaues:
for (key, value) in parameters {
if value is String {
multipartFormData.appendBodyPart(data: value.dataUsingEncoding(NSUTF8StringEncoding)!, name: key)
} else if value is Int {
let convertedValueNumber: NSNumber = NSNumber(int: value.intValue)
let data = NSKeyedArchiver.archivedDataWithRootObject(convertedValueNumber)
multipartFormData.appendBodyPart(data: data, name: key)
}
}

}, encodingCompletion: { encodingResult in
//some processing
})

但是服务器返回错误,我没有发送 Int 值。如何将 Int 值添加到参数?

最佳答案

NSKeyedArchiver 很好奇。通常你只发送字符串表示,例如:

Alamofire.upload(.POST, URL, headers: headers, multipartFormData: { multipartFormData in
//add some jpg image
//add other values:
for (key, value) in parameters {
if value is String {
multipartFormData.appendBodyPart(data: value.dataUsingEncoding(NSUTF8StringEncoding)!, name: key)
} else if value is Int {
multipartFormData.appendBodyPart(data: "\(value)".dataUsingEncoding(NSUTF8StringEncoding)!, name: key)
}
}
}, encodingCompletion: { encodingResult in
//some processing
})

或者,更简单,因为字符串插值适用于 StringInt:

Alamofire.upload(.POST, URL, headers: headers, multipartFormData: { multipartFormData in
//add some jpg image
//add other values:
for (key, value) in parameters {
if value is String || value is Int {
multipartFormData.appendBodyPart(data: "\(value)".dataUsingEncoding(NSUTF8StringEncoding)!, name: key)
}
}
}, encodingCompletion: { encodingResult in
//some processing
})

或者,在带有 Swift 3 的 Alamofire 4 中:

Alamofire.upload(multipartFormData: { multipartFormData in
//add some jpg image
//add other values:
for (key, value) in parameters {
if value is String || value is Int {
multipartFormData.append("\(value)".data(using: .utf8)!, withName: key)
}
}
}, to: url, method: .post, headers: headers, encodingCompletion: { encodingResult in
//some processing
})

关于json - Alamofire上传参数如何添加Int值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37397581/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com