ios - 如何检查图像是否为零?

标签 ios swift post uiimage alamofire

我需要检查图像是否为零,我将其指定为字典中的 [key, value] 对之一。我需要在 Alamofire Post Method 中将字典作为参数发送。但是我无法传递参数。我会展示我所做的。澄清我做错了什么!并给我解决方案。

var parameters: [String : AnyObject ] = [
        "email" : "123@gmail.com",
        "password" : "password",
        "full_name": "XXX",
        "profile_pic" : UIImage(named: "abc")!
        ]
Alamofire.upload(
        .POST,
        "http://abc/public/user/register",
        multipartFormData: { multipartFormData in


            for (key, value) in parameters {

            multipartFormData.appendBodyPart(data: value.dataUsingEncoding(NSUTF8StringEncoding)!, name: key)
            }
        },
        encodingCompletion: { encodingResult in
            switch encodingResult {
            case .Success(let upload, _, _):
                upload.responseJSON { response in


                    debugPrint(response)

                }
            case .Failure(let encodingError):
                print(encodingError)
            }
        }
    )

我遇到一个错误说,无法识别的选择器发送到一个实例我想得到成功的响应,即使 profile_pic 是否为 nil。如果我像这样附加图像,我会得到成功响应 multipartFormData.appendBodyPart(fileURL: unicornImageURL, name: "unicorn").

最终的结果是,无论他是否上传头像,响应都应该说用户注册成功。因为它是一个可选字段,对吗?!

最佳答案

您不能在这样的集合中将键设置为 nil。您需要检查它是否存在。

var parameters: [String : AnyObject ] = [
  "email" : "123@gmail.com",
  "password" : "password",
  "full_name": "XXX",
]

if let image = UIImage(named: "abc") {
  parameters["profile_pic"] = image
}

关于ios - 如何检查图像是否为零?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36746527/

相关文章:

html - 从 HTTP header 复制 Post 操作

Swift:覆盖 NSObject 哈希而不会发生溢出崩溃

swiftyjson - 调用可以抛出,但它被标记为 'try' 并且错误未被处理

java - 简单 while 循环的时间复杂度

java - 使用 Jersey 对 Google Translate 进行 POST 调用会返回 HTTP 404

javascript - 跨(子)域 AJAX POST 请求(带文件/大体)

c# - 在 C# 中获取连接的设备序列号

ios - MKMarkerAnnotationView 字形图像不显示

ios - No Such Module Found 在 Podspec 中添加依赖

ios - 完成一个 UITableView