如何使用Moya在Swift中上传图片?

时间:2019-06-29 16:27:05

标签: ios swift uiimagepickercontroller rx-swift moya

我有一个项目,用户可以从图库或快照中选择图像,并且应该将其上传到远程服务器。

现在,如果我尝试使用放置在xcode中的静态图像进行上传,该图像将被上传,但是当我使用ImagePicker并选择该图像并将其传递给{{ 1}},该照片显示但无法上传到服务器。该应用程序不会崩溃,只是无法上传图像。有什么原因吗?任何帮助将不胜感激

ImageView

我正在使用NetworkAdapter.instance.uploadImage(status: "user", image: Img.image).subscribe(onNext: { check in print("CHECKOUT NOW \(check)") }, onError: { error in print("CHECKOUT NOW \(error.localizedDescription)") }).disposed(by: disposeBag) 进行API调用

Moya

1 个答案:

答案 0 :(得分:2)

尝试一下: 更改Jpeg数据。

case .uploadImage(let data):
           let imageData = data.image.jpegData(compressionQuality: 0)
           let memberIdData = “\(data.status)“.data(using: String.Encoding.utf8) ?? Data()
           var formData: [Moya.MultipartFormData] = [Moya.MultipartFormData(provider: .data(imageData!), name: “image”, fileName: “user.jpeg”, mimeType: “image/jpeg”)]