ASIHTTPRequest类库中的ASIFormDataRequest是实现HTTP协议中的处理POST表单的很好的类库。使用起来非常简单。下面特酷吧简要总结其用法。 
  在说明之前先需要了解HTTP请求的Get和Post方法。 
  Get方法一般是从服务器获取数据,而Post方法主要是向服务器传输一些数据。 
  Get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到完整的URL请求。ASIHTTPRequest类主要完成Get请求。 
  Post方法是将表单内各个字段与其内容放置在HTML HEADER内传送到ACTION属性所指的URL地址。用户看不到这个过程。ASIFormDataRequest类主要完成Post请求。 
 
  关于ASIHTTPRequest类库的安装配置详见《ASIHTTPRequest的环境配置和使用示例》 
  1,构造请求 
  需要包含头文件:#import "ASIFormDataRequest.h" 
  ASIFormDataRequest *request;            
  request=[ASIFormDataRequest requestWithURL:[NSURL URLWithString:@"http://www.tekuba.net"]]; 
  //构造请求            
  [request setPostValue:emailFiled.text forKey:@"Mail"]; 
  [request setPostValue:accountFiled.text forKey:@"UserAccount"];//帐户 
  [request setPostValue:[self md5:passwordFiled.text] forKey:@"PassWord"];//密码 
  [request setDelegate:self]; 
  //配置代理为本类 
  [request setTimeOutSeconds:10]; 
  //设置超时        
  [request setDidFailSelector:@selector(urlRequestFailed:)]; 
  [request setDidFinishSelector:@selector(urlRequestSucceeded:)]; 
  [request startSynchronous];//同步传输 
  //[request startAsynchronous];//异步传输 
  2,实现数据处理方法 
  //连接失败 
  -(void)urlRequestFailed:(ASIHTTPRequest *)request 
  { 
  NSError *error =[request error]; 
  NSLog(@"%@",error); 
  NSLog(@"连接失败!"); 
  UIAlertView * alt=[[UIAlertView alloc] initWithTitle:@"提示" message:@"连接失败" delegate:nil cancelButtonTitle:@"确定" otherButtonTitles:nil, nil]; 
  [alt show]; 
  [alt release]; 
  } 
  //请求成功 
  -(void)urlRequestSucceeded:(ASIHTTPRequest *)request 
  { 
  NSData *data=[request responseData]; 
  NSXMLParser *parser=[[NSXMLParser alloc] initWithData:data]; 
  NSLog(@"data length = %d",[data length]); 
  NSLog(@"xml data = %@",[[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]); 
  [parser setDelegate:self]; 
  [parser parse];//进入解析 
  } 
   转载自特酷吧http://www.tekuba.net/wap.asp?act=View&id=269 
 
