读书人

ASIHttpRequest POST数据的疑义

发布时间: 2012-12-18 12:43:41 作者: rapoo

ASIHttpRequest POST数据的疑问
我想使用 ASIHttpRequest实现如下的功能

POST HTTP/1.1 http://www.163.com
HOST:www.163.com
ContentLenght: 10

aaaaaaaaaa


假设是以上这样的,那请问我用ASIHttpRequest如何来组织上面的数据呢?

第一次使用 ASIHttpRequest 了解的不多,先谢谢了!
[最优解释]


大概写下
NSMutableURLRequest *request=[NSMutableURLRequest requestWithURL:@“htttp://”
cachePolicy:NSURLRequestUseProtocolCachePolicy
timeoutInterval:60.0];

[request addValue: @"text/xml; charset=utf-8" forHTTPHeaderField:@"Content-Type"];

[request addValue: @"http://tempuri.org/GetSmsVerifyCodeInfo" forHTTPHeaderField:@"SOAPAction"];

//设置Content-length
[request addValue: msgLength forHTTPHeaderField:@"Content-Length"];
//设置请求类型 POST或GET
[request setHTTPMethod:@"POST"];
NSString *soapMessage=@"a=1&b=2&c=3";
//设置请求Body(只有post方式有)
[request setHTTPBody:[soapMessage dataUsingEncoding:NSUTF8StringEncoding]];

//然后NSURLConnection


[其他解释]
POST 应该使用 ASIFormDataRequest 组织数据
[其他解释]
使用方法:
ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url];
[request setPostValue:@"Ben" forKey:@"first_name"];
[request setPostValue:@"Copsey" forKey:@"last_name"];
[request setFile:@"/Users/ben/Desktop/ben.jpg" forKey:@"photo"];
[其他解释]
引用:
POST 应该使用 ASIFormDataRequest 组织数据



我现在将代码实现如下:
NSString *myRequestString = @"[2012112618351111,T21,2,18@111111111111111111@222222222222222222@333333333333333333]";
NSData *myRequestData = [ NSData dataWithBytes: [ myRequestString UTF8String ] length: [ myRequestString length ] ];
NSURL * url = [NSURL URLWithString:@"http://211.140.2.123:8080/terminal/gprs"];
ASIFormDataRequest * request = [ASIFormDataRequest requestWithURL:url];

[request setRequestMethod:@"POST"];
[request setHTTPBody:myRequestData];


[request addRequestHeader:@"User Agent" value:@"13800138000"];
[request addRequestHeader:@"Host" value:@"http://211.140.2.123:8080/terminal/gprs"];

[request setDelegate:self];
[request startAsynchronous];

1.编译器会警告说 setHTTPBody 没有 respond
2.运行之后出现 [ASIFormDataRequest setHTTPBody:]: unrecognized selector sent to instance 错误
请问大牛 这个如何解决?

[其他解释]

引用:
使用方法:
ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url];
[request setPostValue:@"Ben" forKey:@"first_name"];
[request setPostValue:@"Copsey" forKey:@"last_name"];
……


请问 那我要实现如下的格式 我应该怎么弄呢?
POST HTTP/1.1 http://www.163.com
HOST:www.163.com
ContentLenght: 10

aaaaaaaaaa
[其他解释]
引用:
使用方法:
ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url];
[request setPostValue:@"Ben" forKey:@"first_name"];
[request setPostValue:@"Copsey" forKey:@"last_name"];
……


用你的这个方法已经实现了 谢谢!


但是我还是想知道 我在用 ASIFormDataRequest 的时候 问题出在哪里!!
[其他解释]
不好以上 刚才引用错了 我用的 是2楼的方法 NSMutableURLRequest

读书人网 >Iphone

热点推荐