图像从iOS发送到php服务器

时间:2012-09-13 10:44:00

标签: php ios stream

我想使用这段代码将图像文件发送到php服务器

-(void)saveImageToServer
{
    NSData *dataImage = UIImageJPEGRepresentation([arrImage objectAtIndex:0], 0.8f);   
    NSString *urlString = @"http://myurl:8002/FileService/REST/UploadFile?fileName=file.png";
    NSString *filename = @"test";
    NSMutableURLRequest* request= [[[NSMutableURLRequest alloc] init] autorelease];
    [request setURL:[NSURL URLWithString:urlString]];
    [request setHTTPMethod:@"POST"];
    NSString *boundary = @"---------------------------14737809831466499882746641449";
    NSString *contentType = [NSString stringWithFormat:@"multipart/form-data; boundary=%@",boundary];
    [request addValue:contentType forHTTPHeaderField: @"Content-Type"];   
    NSMutableData *postbody = [NSMutableData data];
    [postbody appendData:[[NSString stringWithFormat:@"\r\n--%@\r\n",boundary] dataUsingEncoding:NSUTF8StringEncoding]];
    [postbody appendData:[[NSString stringWithFormat:@"Content-Disposition: form-data; name=\"image\"; filename=\"%@.png\"\r\n", filename] dataUsingEncoding:NSUTF8StringEncoding]];
    [postbody appendData:[[NSString stringWithString:@"Content-Type: application/octet-stream\r\n\r\n"] dataUsingEncoding:NSUTF8StringEncoding]];
    [postbody appendData:[NSData dataWithData:dataImage]];
    [postbody appendData:[[NSString stringWithFormat:@"\r\n--%@--\r\n",boundary] dataUsingEncoding:NSUTF8StringEncoding]];
    [request setHTTPBody:postbody];
    NSData *returnData = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];
    NSString* returnString = [[NSString alloc] initWithData:returnData encoding:NSUTF8StringEncoding];
    NSLog(@"test %@",returnString);
}

但我在服务器上收到的是

----------------------------- 14737809831466499882746641449 内容处理:表格数据; NAME = “图像”;文件名= “test.png” Content-Type:application / octet-stream

ÿ‡” 知道我犯了什么错误

0 个答案:

没有答案