【问题标题】:How to send image to server?如何将图像发送到服务器?
【发布时间】:2018-09-21 15:19:18
【问题描述】:

我正在尝试使用 .post 和 mulitpartFormData 方式将 UIImage 文件上传到服务器。任何人都可以查看下面的代码并告知问题所在?我今天一整天都试图成功上传图像文件。 但是以我短暂的经验和对 swift 的研究,即使是研究与我的情况相关的正确答案也非常困难。

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)
                }
        })

【问题讨论】:

  • 您面临的问题是什么?
  • 我尝试将图像文件上传到服务器,但到目前为止一直失败。坦率地说,我不知道我的代码出了什么问题。我已经测试过使用 Postman 将图像上传到服务器,它正在工作,所以我猜可能问题出在我的编码中。
  • 你调试过流程吗?使用断点?是否会打印任何错误或成功?
  • 成功:{ "img_profile" = ("\Uc81c\Ucd9c\Ub41c\Ub370\Uc774\Ud130\Ub294\Ud30c\Uc77c\Uc774\Uc544\Ub2d9\Ub2c8\Ub2e4.\Uc81c\Ucd9c \Ub41c\Uc11c\Uc2dd\Uc758\Uc778\Ucf54\Ub529\Ud615\Uc2dd\Uc744\Ud655\Uc778\Ud558\Uc138\Uc694.");
  • 以上是我能看到的输出。

标签: ios swift post upload alamofire


【解决方案1】:

您的问题在于以下行,因为您没有添加 filenamefilename 将是服务器期望图像的参数名称:

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

尝试通过添加 file-name 来更新:

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

希望这会有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-01-17
    • 2020-05-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-20
    相关资源
    最近更新 更多