0
点赞
收藏
分享

微信扫一扫

IOS上传图片的方法


下面是图片上传的方法:

-(void)loadImage:(NSString*)aurl
{
        NSData                    *imageData;
        NSMutableData        *postBody;
        NSString                *stringBoundary, *contentType;
        NSURL *url = [NSURL URLWithString:aurl];    //将字符串转换为NSURL格式
       
    NSArray *paths = NSSearchPathForDirectori esInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *documentsDirectory = [paths objectAtIndex:0];
    NSString *path = [documentsDirectory stringByAppendingPathCom ponent:@"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];
}

举报

相关推荐

0 条评论