post上传

来源:互联网 发布:cf2016最新刷枪软件 编辑:程序博客网 时间:2024/06/05 05:54
- (void)postUpload{ /* \n--同上\n Content-Disposition: form-data; name="userfile"; filename="001.png"\n Content-Type: application/json\n\n 拼接的数据 \n\n --同上--\n */ //1.创建URL NSURL *url = [NSURL URLWithString:@"http://192.168.31.157/post/upload.php"]; //2.创建请求 NSMutableURLRequest *requestM = [NSMutableURLRequest requestWithURL:url cachePolicy:0 timeoutInterval:10]; requestM.HTTPMethod = @"POST"; //3.拼接数据 NSMutableData *dataM = [NSMutableData data]; NSString *boundary = @"boundary"; NSString *name = @"userfile"; NSString *filename = @"002.png"; //3.1拼接\n--同上\n数据 NSString *bodyStr = [NSString stringWithFormat:@"\n--%@\n",boundary]; [dataM appendData:[bodyStr dataUsingEncoding:NSUTF8StringEncoding]]; //3.2拼接Content-Disposition: form-data; name="userfile"; filename="001.png"\n数据 bodyStr = [NSString stringWithFormat:@"Content-Disposition: form-data; name=\"%@\"; filename=\"%@\"\n",name,filename]; [dataM appendData:[bodyStr dataUsingEncoding:NSUTF8StringEncoding]]; //3.3拼接Content-Type: application/json\n\n bodyStr = @"Content-Type: application/stream\n\n"; [dataM appendData:[bodyStr dataUsingEncoding:NSUTF8StringEncoding]]; //3.4拼接要上传的数据 NSString *path = [[NSBundle mainBundle] pathForResource:@"001.png" ofType:nil]; [dataM appendData:[NSData dataWithContentsOfFile:path]]; //3.5拼接\n\n --同上--\n#warning 一定不要多空格 bodyStr = [NSString stringWithFormat:@"\n--%@--\n",boundary]; [dataM appendData:[bodyStr dataUsingEncoding:NSUTF8StringEncoding]]; //4.设置请求体 requestM.HTTPBody = dataM; //4.1设置附加信息 NSString *headerStr = [NSString stringWithFormat:@"multipart/form-data; boundary=%@",boundary]; [requestM setValue:headerStr forHTTPHeaderField:@"Content-Type"]; //5.建立连接 [NSURLConnection sendAsynchronousRequest:requestM queue:[NSOperationQueue mainQueue] completionHandler:^(NSURLResponse *response, NSData *data, NSError *connectionError) { id result = [NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:nil]; NSLog(@"%@",result); }];}
0 0