您的位置:首页 > 理论基础 > 计算机网络

iOS通过HTTP POST上传文件

2015-10-12 18:24 681 查看
iOS通过HTTP POST上传文件,代码如下:

 

Java代码  


//创建Request对象  

NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init];  

    [request setURL:[NSURL URLWithString:urlStr]];  

    [request setHTTPMethod:@"POST"];  

    NSMutableData *body = [NSMutableData data];  

  

//设置表单项分隔符  

    NSString *boundary = @"---------------------------14737809831466499882746641449";  

  

//设置内容类型  

    NSString *contentType = [NSString stringWithFormat:@"multipart/form-data; boundary=%@",boundary];  

    [request addValue:contentType forHTTPHeaderField: @"Content-Type"];  

  

    //写入图片的内容  

    [body appendData:[[NSString stringWithFormat:@"--%@\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]];  

    [body appendData:[[NSString stringWithFormat:@"Content-Disposition: form-data; name=\"%@\"; filename=\"PIC_DATA1.jpg\"\r\n",@"PIC_DATA1"] dataUsingEncoding:NSUTF8StringEncoding]];  

    [body appendData:[@"Content-Type: image/jpeg\r\n\r\n" dataUsingEncoding:NSUTF8StringEncoding]];  

    [body appendData:[infoDic objectForKey:@"PIC_DATA1"]];  

    [body appendData:[[NSString stringWithFormat:@"\r\n"] dataUsingEncoding:NSUTF8StringEncoding]];  

      

    //写入INFO的内容  

    [body appendData:[[NSString stringWithFormat:@"--%@\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]];  

    [body appendData:[[NSString stringWithFormat:@"Content-Disposition: form-data; name=\"%@\"\r\n\r\n",@"PIC_INFO"] dataUsingEncoding:NSUTF8StringEncoding]];  

    [body appendData:jsonData];  

    [body appendData:[@"\r\n" dataUsingEncoding:NSUTF8StringEncoding]];  

  

     //写入尾部内容  

    [body appendData:[[NSString stringWithFormat:@"--%@--\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]];  

  

    [request setHTTPBody:body];  

      

    NSHTTPURLResponse *urlResponese = nil;  

    NSError *error = [[NSError alloc]init];  

    NSData* resultData = [NSURLConnection sendSynchronousRequest:request returningResponse:&urlResponese error:&error];  

      

    NSDictionary *responseDic = [NSJSONSerialization JSONObjectWithData:resultData options:NSJSONReadingMutableLeaves error:nil];  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  ios表单上传