代码如下:
[ASIHTTPRequest setDefaultUserAgentString:@"MyApp 1.0"];如果不设置user agent,ASIHTTPRequest会为你创建一个。例如(Mac OS程序):
[request setUserAgent:@"MyApp 1.0"];
[request setShouldContinueWhenAppEntersBackground:YES];
//记录过去5秒的平均流量字节/秒 NSLog(@"%llu",[ASIHTTPRequest averageBandwidthUsedPerSecond]); if ([ASIHTTPRequest isNetworkInUse]) { // ASIHTTPRequest 进程中有requests正在使用网络 }
[ASIHTTPRequest setShouldUpdateNetworkActivityIndicator:NO];
[request setNumberOfTimesToRetryOnTimeout:2];
[request setRequestMethod:@"PUT"]; [request setShouldAttemptPersistentConnection:YES];
// 设置持久连接的超时时间为120秒 [request setPersistentConnectionTimeoutSeconds:120]; // 彻底禁用持久连接 [request setShouldAttemptPersistentConnection:NO]; 强制使用HTTP 1.0 [request setUseHTTPVersionOne:YES];
[request setValidatesSecureCertificate:NO];
以流的方式读取本地文件,然后上传到服务器
ASIFormDataRequests的设置
[request setFile:@"/Users/ben/Desktop/bigfile.txt" forKey:@"file"];//使用setFile:forKey:时,ASIFormDataRequest会使用流的方式上传文件到服务器
NSURL *url = [NSURL URLWithString:@"http://www.baidu.com/"]; ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url]; [request setShouldStreamPostDataFromDisk:YES]; [request appendPostData:data]; [request appendPostDataFromFile:@"/Users/XXX/Desktop/bigfile.txt"]; [request startSynchronous];