zoukankan      html  css  js  c++  java
  • IOS上传图片的方法

    下面是图片上传的方法:

    -(void)loadImage:(NSString*)aurl
    {
            NSData              *imageData;
            NSMutableData       *postBody;
            NSString            *stringBoundary, *contentType;
            NSURL *url = [NSURL URLWithString:aurl];  //将字符串转换为NSURL格式
           
        NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
        NSString *documentsDirectory = [paths objectAtIndex:0];
        NSString *path = [documentsDirectory stringByAppendingPathComponent:@"1.jpg"];

        imageData = [[NSData alloc] initWithContentsOfFile:path];

            ASIFormDataRequest *aRequest = [[ASIFormDataRequest alloc] initWithURL:url];
           
            stringBoundary = [NSString stringWithString:@"0xKhTmLbOuNdArY"];
           
        contentType    = [NSString stringWithFormat:@"multipart/form-data; boundary=%@", stringBoundary];

            [aRequest addRequestHeader:@"Content-Type" value:contentType];
           
            postBody = [[NSMutableData alloc] init];
           
        [postBody appendData:[[NSString stringWithFormat:@"\r\n\r\n--%@\r\n", stringBoundary] dataUsingEncoding:NSUTF8StringEncoding]];
           
        [postBody appendData:[[NSString stringWithString:@"Content-Disposition: form-data; name=\"title\"\r\n\r\n"] dataUsingEncoding:NSUTF8StringEncoding]];
           
        [postBody appendData:[[NSString stringWithString:@"lighttable"] dataUsingEncoding:NSUTF8StringEncoding]];  // So Light Table show up as source in Twitter post
           
        NSString *imageFileName = [NSString stringWithFormat:@"photo.jpeg"];
           
        [postBody appendData:[[NSString stringWithFormat:@"\r\n--%@\r\n", stringBoundary] dataUsingEncoding:NSUTF8StringEncoding]];
           
        [postBody appendData:[[NSString stringWithFormat:@"Content-Disposition: form-data; name=\"upload\"; filename=\"%@\"\r\n",imageFileName] dataUsingEncoding:NSUTF8StringEncoding]];
           
        [postBody appendData:[@"Content-Type: image/jpeg\r\n\r\n" dataUsingEncoding:NSUTF8StringEncoding]];
           
        [postBody appendData:imageData];
           
            [postBody appendData:[[NSString stringWithFormat:@"\r\n--%@\r\n", stringBoundary] dataUsingEncoding:NSUTF8StringEncoding]];
           
            [postBody appendData:[[NSString stringWithString:@"Content-Disposition: form-data; name=\"password\"\r\n\r\n"] dataUsingEncoding:NSUTF8StringEncoding]];
           
        [postBody appendData:[[NSString stringWithString:@"lighttablexxxxxxxx"] dataUsingEncoding:NSUTF8StringEncoding]];  
           
            [postBody appendData:[[NSString stringWithFormat:@"\r\n--%@\r\n", stringBoundary] dataUsingEncoding:NSUTF8StringEncoding]];

        [aRequest setDelegate:self];
       
            [aRequest appendPostData:postBody];
       
        [aRequest setRequestMethod:@"POST"];  
           
        [aRequest startAsynchronous];
           
            [postBody release];
        [aRequest release];
    }
  • 相关阅读:
    Windows8 游戏开发教程开篇
    IPAD 游戏开发方案,windows开发
    谈一谈 Windows 8 的软件开发架构
    html5 大家一起来瞅吧瞅吧
    silverlight5中CLGF的推进
    html5 游戏界面问题
    挑战SVN,最纯洁的SVN客户端计划
    章鱼哥的暴走,HTML5也开始了
    MySQL的常用操作!
    两种屏蔽鼠标右键的方法
  • 原文地址:https://www.cnblogs.com/qiqibo/p/2705543.html
Copyright © 2011-2022 走看看