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

IOS ASIFormDataRequest使用简介(2/25)的更多相关文章

  1. IOS NSInvocation用法简介

    IOS NSInvocation用法简介 2012-10-25 19:59 来源:博客园 作者:csj007523 字号:T|T [摘要]在 iOS中可以直接调用某个对象的消息方式有两种,其中一种就是 ...

  2. iOS移动开发周报-第25期

    iOS移动开发周报-第25期 [摘要]:本期iOS移动开发周报带来如下内容:苹果发布 iPhone6 和 Apple Watch.Swift 1.0 GM发布.Xcode 6支持PDF Vector作 ...

  3. iOS系统版本简介

    iOS系统版本简介 ⽬目前iOS设备所⽀支持的最主流操作系统是iOS6,⼤大概占了93%,⽽而使 ⽤用iOS5的iOS设备⼤大概占6%,剩下的只有1%.( 根据苹果的官⽅方数据 ) 从iOS1到现在的 ...

  4. GitHub 上排名前 100 的 IOS 开源库简介

    主要对当前 GitHub 排名前 100 的项目做一个简单的简介, 方便初学者快速了解到当前 Objective-C 在 GitHub 的情况. 项目名称 项目信息 1. AFNetworking 作 ...

  5. iOS 的 XMPPFramework 简介

    XMPPFramework是一个OS X/iOS平台的开源项目,使用Objective-C实现了XMPP协议(RFC-3920),同时还提供了用于读写XML的工具,大大简化了基于XMPP的通信应用的开 ...

  6. ios ASIHTTPRequest类库简介和使用说明

    官方网站: http://allseeing-i.com/ASIHTTPRequest/ .可以从上面下载到最新源码,以及获取到相关的资料. 使用iOS SDK中的HTTP网络请求API,相当的复杂, ...

  7. iOS多线程-RunLoop简介

    什么是RunLoop? 从字面上来看是运行循环的意思. 内部就是一个do{}while循环,在这个循环里内部不断的处理各种任务(比如:source/timer/Observer) RunLoop的存在 ...

  8. iOS 多线程GCD简介

    一.简介 1.1 GCD (Grand Central Dispatch )是Apple开发的一个多核编程的解决方法. Grand 含义是“伟大的.宏大的”,Central含义“中央的”,Dispat ...

  9. iOS Foundation框架简介 -1.常用结构体的用法和输出

    1.安装Xcode工具后会自带开发中常用的框架,存放的地址路径是: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.plat ...

随机推荐

  1. 如何修改mysql用户名和密码

    如何修改mysql用户名和密码   以修改mysql的root密码为例修改的三种方法 方法1: 用SET PASSWORD命令 mysql>SET PASSWORD FOR 'root'@'lo ...

  2. bootstrap中table页面做省市区级联效果(级联库见前面级联编辑)(非select下拉框)

    <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...

  3. C#定时执行一个操作

    一个客户端向服务器端socket发送报文,但是服务器端限制了发送频率,假如10秒内只能发送1次,这时客户端也要相应的做限制,初步的想法是在配置文件中保存上次最后发送的时间,当前发送时和这个上次最后时间 ...

  4. CentOS6.5 安装 jdk1.7

    1.卸载centos自带的jdk # rpm -qa | grep java 结果大致为: tzdata-java-2012c-1.el6.noarch java-1.7.0-openjdk-1.7. ...

  5. python 中的[::-1]

    for value in rang(10)涉及的数字倒序输出: for value in rang(10)[::-1]涉及的数字倒序输出: 一.反转 二.详解 这个是python的slice nota ...

  6. Page Visibility API(页面可见性)

    页面可见性: 就是对于用户来说,页面是显示还是隐藏, 所谓显示的页面,就是我们正在看的页面:隐藏的页面,就是我们没有看的页面. 因为,我们一次可以打开好多标签页面来回切换着,始终只有一个页面在我们眼前 ...

  7. spring4+mybatis3+maven

    简介 在上一篇博文中,我们搭建了maven环境,现在我们就用maven搭个ssm框架,废话不多说,直接开始吧 代码下载地址 链接:http://pan.baidu.com/s/1nvg42EH 密码: ...

  8. vue.js学习笔记之v-bind,v-on

    v-bind 指令用于响应地更新 HTML 特性 形式如:v-bind:href    缩写为    :href; v-on 指令用于监听DOM事件 形式如:v-on:click  缩写为 @clic ...

  9. IIS6.0开启gzip压缩(来自百度)

    IIS6.0开启gzip压缩 | 更新:2012-08-10 10:29 1 2 3 4 5 分步阅读 开启gzip可以极大的加速网站.有时压缩比率高达80%,近来测试了一下,最少都有40%以上,还是 ...

  10. python访问数据库一

    直接访问mysql,示例如下: # coding:utf-8 import time import MySQLdb # import traceback # import sys conn = MyS ...