Alamofire 上传 照片

记录开发:上传文件和普通的json数据上传不一样,特别注意fileName,我因为fileName里的名字,后台得不到图片数据,或者是 图片数据得到不正确,很大可能是因为fileName 不正确,特意记录下,我搞了好久,记录自己,也提醒下遇到同样问题的同学。

 let fileName = Date().string(withFormat: "yyyymmddHHmmss") + ".jpg"
            RxAlamofire.upload(multipartFormData: {
                                   $0.append(data, withName: "image", fileName: fileName, mimeType: "image/jpg") 
//添加其他参数
                                    $0.append(bodyData!, withName: "body")

                               },
                               to: target.url,
                               method: .post,
                               headers: HTTPHeaders(Self.header)) //   HTTPHeaders(header)
                .flatMap {
                    $0.rx.responseString(encoding: .utf8)
                }
                .subscribe(onNext: { _, response in
                    Log("--- [response] --,\(response)")
//                    if let dict = response as? [String: Any] {
                    var jsonDecoding = JSONDecodingOptions()
                    jsonDecoding.ignoreUnknownFields = true
                    guard let model = try? type.self.init(jsonString: response, options: jsonDecoding) else {
                        return
                    }
                    signal.onNext(model)
//                    }
                }, onError: { error in
                    Log("---[error]--\(error)")
                    signal.onError(error)
                })
                .disposed(by: disposeBag)
            return Disposables.create()
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 我是黑夜里大雨纷飞的人啊 1 “又到一年六月,有人笑有人哭,有人欢乐有人忧愁,有人惊喜有人失落,有的觉得收获满满有...
    陌忘宇阅读 8,635评论 28 53
  • 人工智能是什么?什么是人工智能?人工智能是未来发展的必然趋势吗?以后人工智能技术真的能达到电影里机器人的智能水平吗...
    ZLLZ阅读 4,001评论 0 5
  • 首先介绍下自己的背景: 我11年左右入市到现在,也差不多有4年时间,看过一些关于股票投资的书籍,对于巴菲特等股神的...
    瞎投资阅读 5,828评论 3 8
  • ![Flask](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAW...
    极客学院Wiki阅读 7,459评论 0 3