gpt4 book ai didi

ios - Alamofire上传图片损坏

转载 作者:行者123 更新时间:2023-11-30 10:57:10 30 4
gpt4 key购买 nike

我有使用 Alamofire 上传图像的功能。当我上传它时,图像已损坏。但是当我将其保存到设备时,可以打开图像。

这是上传代码

Alamofire.upload(multipartFormData: { (_multipartFormData:MultipartFormData) in
for (key, value) in parameters! {
if key == "foto_id" {
_multipartFormData.append(
"\(value)".data(using: String.Encoding.utf8)!,
withName: key,
fileName: "_foto_id.png",
mimeType: "image/png"
)
} else if key == "foto_selfie" {
_multipartFormData.append(
"\(value)".data(using: String.Encoding.utf8)!,
withName: key,
fileName: "_foto_selfie.png",
mimeType: "image/png"
)
} else {
//Data other than image
_multipartFormData.append((value as! String).data(using: .utf8)!, withName: key)
}
}
}, usingThreshold: 1, to: BASE_URL, method: .post) { (encodingResult:SessionManager.MultipartFormDataEncodingResult) in

switch encodingResult {


case .success(let upload, _, _):

upload.responseObject{(response: DataResponse<clsResponsePostFotoID>) in

let reqLoginResponse = response.result.value

completionHandler(reqLoginResponse, nil)

}
break

case .failure(let encodingError):
print(encodingError)
// completionHandler(nil,encodingError as NSError?)
break
}
}
}

如果我将 "\(value)".data(using: String.Encoding.utf8)! 更改为 value as!数据,会显示错误

无法使用类型为“(Data?, withName: String, fileName: String, mimeType: String)”的参数列表调用“append”

“append”的重载存在于这些部分匹配的参数列表中:(Data, withName: String, fileName: String, mimeType: String), (URL, withName: String, fileName: String, mimeType: String)

我该如何解决这个问题?谢谢

最佳答案

尝试使用以下代码:

if let image = value as? UIImage, let imageData = UIImageJPEGRepresentation(image, 0.6) {
multipartFormData.append(imageData, withName: key, fileName: key+".jpg", mimeType: "image/jpeg")
}

关于ios - Alamofire上传图片损坏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53834192/

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