swift 图像的压缩上传

    func imagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : AnyObject]) {
        picker.dismissViewControllerAnimated(true, completion: nil)
        let infoo:NSDictionary? = NSDictionary(dictionary: info)
        let image:UIImage? = infoo!.objectForKey(UIImagePickerControllerEditedImage) as? UIImage
        
        self.iocn.image = image!
        
        var data = UIImageJPEGRepresentation(image!,1);
        while data!.length/1024 > 100{
            data = UIImageJPEGRepresentation(image!,0.1);// 压缩比例在0~1之间
        }
        
        let newimage:UIImage? = UIImage(data: data!)
        self.updataimage(newimage!)
    }

    func  updataimage(imagename:UIImage){
        
        let request = AFHTTPRequestOperationManager();
        request.POST(personalPhotoUpdURL, parameters: nil, constructingBodyWithBlock: { (formdata) -> Void in
            
                let formData:AFMultipartFormData = formdata
                let data = UIImageJPEGRepresentation(imagename,1);
                            
                formData.appendPartWithFileData(data, name: "photo", fileName: "photo", mimeType: "image/jpeg")
            
            }, success: { (reguestoperation, statusdict) -> Void in
                var dict = statusdict as! Dictionary<String,AnyObject>;
                if dict["code"] as? Int == 200{
                    MBProgressHUD.showMessagecustom("上传成功")
                    self.iocn.image = imagename
                }else{
                    let str = dict["desc"] as? String
                    MBProgressHUD.showMessagecustom(str!)
                }
          
            }, failure: { (reguestoperation, error) -> Void in
                MBProgressHUD.showMessagecustom("上传失败")
        })
        
    }
原文地址:https://www.cnblogs.com/sunyaxue/p/5581057.html