ios23-文件上传

时间:2023-03-08 20:46:30

1.上传图片

ios23-文件上传

ios23-文件上传

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"

@interface 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

{

[superdidReceiveMemoryWarning];

// 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:@"****"];//通过path图片路径获取图片

NSData *data = UIImagePNGRepresentation(im);//获取图片数据

/*

ios中获取图片的方法有两种,一种是UIImageJPEGRepresentation ,一种是UIImagePNGRepresentation前者获取到图片的数据量要比后者的小很多。。

*/

NSURL *url = [NSURL URLWithString:uploadURL];

ASIFormDataRequest *aRequest = [[ASIFormDataRequestalloc] 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

{

[superviewDidLoad];

// Do any additional setup after loading the view, typically from a nib.

}

- (void)viewDidUnload

{

[superviewDidUnload];

// 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

{

[superviewWillDisappear:animated];

}

- (void)viewDidDisappear:(BOOL)animated

{

[superviewDidDisappear:animated];

}

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation

{

// Return YES for supported orientations

return (interfaceOrientation != UIInterfaceOrientationPortraitUpsideDown);

}

@end