久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

swift 從相冊(cè)里取圖片并Post傳到服務(wù)器上

 爽行天下丶 2015-06-12

這是用swift寫的,,原理都一樣,,直接上代碼吧,也算是記錄一下折騰過的東西,,也提供一個(gè)參考吧,用到的時(shí)候自已優(yōu)化一下,,這只是個(gè)Demo。

這涉及到UIImagePickerController的使用以及網(wǎng)絡(luò)請(qǐng)求等,。

基本的步驟:

1,、彈出相冊(cè)(UIImagePickerController,實(shí)現(xiàn)這兩個(gè)代理 UIImagePickerControllerDelegate,UINavigationControllerDelegate 

2,、選取圖片

3,、確認(rèn)選中并上傳(異步請(qǐng)求)

彈出相冊(cè)

  func showpic()

    {

        imagePicker.delegate=self

        imagePicker.sourceType=UIImagePickerControllerSourceType.PhotoLibrary

        imagePicker.modalTransitionStyle=UIModalTransitionStyle.CoverVertical

        imagePicker.allowsEditing=true

       self.presentViewController(imagePicker, animated:true, completion: nil)

    }

UIImagePickerControllerDelegate 代理

func imagePickerController(picker:UIImagePickerController, didFinishPickingMediaWithInfo info: [NSObject :AnyObject])

    {

        self.dismissViewControllerAnimated(true, completion:nil);

        let gotImage=info[UIImagePickerControllerOriginalImage]as UIImage

     let midImage:UIImage=self.imageWithImageSimple(gotImage,scaledToSize:CGSizeMake(1000.0,1000.0))//這是對(duì)圖片進(jìn)行縮放,因?yàn)楣潭碎L(zhǎng)寬,,所以這個(gè)方法會(huì)變型,,有需要的自已去完善吧, 這里只是粗略使用,。

       upload(midImage)//上傳

    }

//縮放圖片

   func imageWithImageSimple(image:UIImage,scaledToSize newSize:CGSize)->UIImage

    {

     UIGraphicsBeginImageContext(newSize);

    image.drawInRect(CGRectMake(0,0,newSize.width,newSize.height))

    let newImage:UIImage=UIGraphicsGetImageFromCurrentImageContext();

    UIGraphicsEndImageContext();

  return newImage;

 

    }


//上傳

   func upload(img:UIImage)

    {

        

      lb.frame=CGRectMake(0,0, self.view.bounds.size.width,20)


        lb.textColor=UIColor.whiteColor()

       lb.text="上傳中...."

        lb.textAlignment=NSTextAlignment.Center

        lb.backgroundColor=UIColor.blackColor()

       lb.alpha=1


       //添加風(fēng)火輪

       av.frame=CGRectMake(200,200,20, 20)

        av.backgroundColor=UIColor.whiteColor()

       av.color=UIColor.redColor()

        av.startAnimating()

        

       self.view.addSubview(av)

    

       self.view.addSubview(lb)


        let data=UIImagePNGRepresentation(img)//把圖片轉(zhuǎn)成data

        

        let uploadurl:String="http://www./uploadpictest.aspx"//設(shè)置服務(wù)器接收地址

       let request=NSMutableURLRequest(URL:NSURL(string:uploadurl)!)

        

        request.HTTPMethod="POST"//設(shè)置請(qǐng)求方式

        var boundary:String="-------------------21212222222222222222222"

       var contentType:String="multipart/form-data;boundary="+boundary

        request.addValue(contentType, forHTTPHeaderField:"Content-Type")

       var body=NSMutableData()

        body.appendData(NSString(format:"\r\n--\(boundary)\r\n").dataUsingEncoding(NSUTF8StringEncoding)!)

        body.appendData(NSString(format:"Content-Disposition:form-data;name=\"userfile\";filename=\"dd.jpg\"\r\n").dataUsingEncoding(NSUTF8StringEncoding)!)

        body.appendData(NSString(format:"Content-Type:application/octet-stream\r\n\r\n").dataUsingEncoding(NSUTF8StringEncoding)!)

        body.appendData(data)

        body.appendData(NSString(format:"\r\n--\(boundary)").dataUsingEncoding(NSUTF8StringEncoding)!)

        request.HTTPBody=body

        let que=NSOperationQueue()

       NSURLConnection.sendAsynchronousRequest(request, queue: que, completionHandler: {

            (response, data, error) ->Void in

            

           if (error != nil){

               println(error)

            }else{

                //Handle data in NSData type

               var tr:String=NSString(data:data,encoding:NSUTF8StringEncoding)!

               println(tr)

                //在主線程中更新UI風(fēng)火輪才停止

                dispatch_sync(dispatch_get_main_queue(), {

                   self.av.stopAnimating()

                 //self.lb.hidden=true

       

                })

                

            }

        })       

    }


在服務(wù)器端接收,。我用的是C#,做個(gè)簡(jiǎn)的實(shí)現(xiàn),。
HttpPostedFile postfile=Request.Files[0];
postfile.SaveAs(Server.MapPath("test/0000.jpg");
Response.Write("上傳成功,!");
Response.End();



    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點(diǎn),。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,,謹(jǐn)防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào),。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多