如何将图像发送到服务器



我正在尝试使用.post和mulitpartFormData方式将UIImage文件上传到服务器。任何人都可以查看下面的代码并建议出了什么问题?我试图成功上传一整天的图像文件。但是,由于我对斯威夫特的短暂经验和研究,即使很难研究与我的情况相关的正确答案。

PS. ">

UIImageView.image 必须仅从主线程使用"消息连续显示"保护让"点。也请让我借用你的智慧。

    Alamofire.upload(
            multipartFormData: { multipartform in
                guard let image = self.profileImage.image else { return }
                    let imageData = UIImageJPEGRepresentation(image, 0.1)
                    multipartform.append(imageData!, withName: "img_profile", mimeType: "image/jpg")
        },
            to: urlString,
            method: .post,
            encodingCompletion: { result in
                switch result {
                case .success(let request, _, _):
                    request.responseData(completionHandler: { (response) in
                        switch response.result {
                        case .success:
                            print(response)
                        case .failure(let error):
                            print(error)
                        }
                })
                case .failure(let error):
                    print(error)
                }
        })

您的问题出在以下行,因为您没有添加filename并且filename将是需要图像的服务器的参数名称:

multipartform.append(imageData!, withName: "img_profile", mimeType: "image/jpg")

尝试通过添加文件名进行更新:

multipartFormData.append(imageData!, withName: "img_profile", fileName: "file-name", mimeType: "image/jpg")

希望这会有所帮助。

相关内容

  • 没有找到相关文章

最新更新