ios23-文件上传
3.
//
// ios23_uploadViewController.h
// ios23-upload
//
// Created by on 13-6-17.
// Copyright 2013年 __MyCompanyName__. All rights reserved.
//
#import <UIKit/UIKit.h>
#import "ASIHTTPRequest.h"
@inte易做图ce ios23_uploadViewController : UIViewController<ASIHTTPRequestDelegate>
-(IBAction)upload;
@end
-------------------------------------------------
//
// ios23_uploadViewController.m
// ios23-upload
//
// Created by on 13-6-17.
// Copyright 2013年 __MyCompanyName__. All rights reserved.
//
#import "ios23_uploadViewController.h"
#import "ASIHTTPRequest.h"
#import "ASIFormDataRequest.h"
@implementation ios23_uploadViewController
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Release any cached data, images, etc that aren't in use.
}
#pragma mark - View lifecycle
-(void)upload{
//定义请求的URL地址:
NSString *uploadURL = @"http://172.22.65.2/2012/upload.php";
UIImage *im = [UIImage imageNamed:@"csdn"];//通过path图片路径获取图片
NSData *data = UIImagePNGRepresentation(im);//获取图片数据
/*
ios中获取图片的方法有两种,一种是UIImageJPEGRepresentation ,一种是UIImagePNGRepresentation前者获取到图片的数据量要比后者的小很多。。
*/
NSURL *url = [NSURL URLWithString:uploadURL];
ASIFormDataRequest *aRequest = [[ASIFormDataRequest alloc] initWithURL:url];
[aRequest setDelegate:self];//代理
[aRequest setRequestMethod:@"POST"];
[aRequest addData:data withFileName:@"test.png" andContentType:@"image/png" forKey:@"file"];
//forKey:@"file"
[aRequest addRequestHeader:@"Content-Type" value:@"binary/octet-stream"];//这里的value值 需与服务器端 一致
[aRequest startAsynchronous];//开始。异步
[aRequest setDidFinishSelector:@selector(headPortraitSuccess)];//当成功后会自动触发 headPortraitSuccess 方法
[aRequest setDidFailSelector:@selector(headPortraitFail)];//如果失败会 自动触发 headPortraitFail 方法
// [aRequest release];
}
-(void)headPortraitSuccess{
NSLog(@"上传成功!");
}
-(void)headPortraitFail{
NSLog(@"上传失败!");
}
//开始request请求
- (void)requestStarted:(ASIHTTPRequest *)request{
NSLog(@"开始请求!");
}
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
}
- (void)viewDidUnload
{
[super viewDidUnload];
// Release any retained subviews of the main view.
// e.g. self.myOutlet = nil;
}
- (void)viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
}
- (void)viewDidAppear:(BOOL)animated
{
[super viewDidAppear:animated];
}
- (void)viewWillDisappear:(BOOL)animated
{
[super viewWillDisappear:animated];
}
- (void)viewDidDisappear:(BOOL)animated
{
[super viewDidDisappear:animated];
}
- (BOOL)shouldAutorotateToInte易做图ceOrientation:(UIInte易做图ceOrientation)inte易做图ceOrientation
{
// Return YES for supported orientations
return (inte易做图ceOrientation != UIInte易做图ceOrientationPortraitUpsideDown);
}
@end
补充:移动开发 , IOS ,