您的位置:首页 > 产品设计 > UI/UE

NSMutableURLRequest,在POST方式下传递参数

2013-07-17 09:12 387 查看
NSMutableURLRequest *request
= [[NSMutableURLRequest
alloc] init];

NSUserDefaults *defs =
[NSUserDefaults standardUserDefaults];

NSLog(@"Load currentCookie:%@", cookie);

[request setValue:cookie
forHTTPHeaderField:@"Cookie"];

[request setURL:[a
objectAtIndex:0]];

[request setHTTPMethod:@"GET"];

NSData *returnData =
[NSURLConnection sendSynchronousRequest:request

returningResponse:nil error:nil];

[request release];

一、iPhone终端代码:

(同步请求)

NSString *post = nil;

post = [[NSString alloc] initWithFormat:@"message=%@",@"hello,world."];

NSData *postData = [post dataUsingEncoding:NSASCIIStringEncoding allowLossyConversion:YES];

NSString *postLength = [NSString stringWithFormat:@"%d", [postData length]];

NSMutableURLRequest *request = [[[NSMutableURLRequest alloc] init] autorelease];

[request setURL:[NSURL URLWithString:@"http://192.168.10.220:18080/data/1.jsp"]];

[request setHTTPMethod:@"POST"];

[request setValue:postLength forHTTPHeaderField:@"Content-Length"];

[request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"];

[request setHTTPBody:postData];

//[NSURLConnection connectionWithRequest:request delegate:self ];

//同步请求的的代码

//returnData就是返回得到的数据

NSData *returnData = [NSURLConnection sendSynchronousRequest:request returningRequest:nil error:nil];

[post release];

二、web服务器端代码

<%

String message = request.getParameter("message");

System.out.println("message="+message);

out.println("message="+message);

%>

采用json 格式post 字符串

static NSString *urlString = @"http://192.168.1.103/WebAccess/admin/tablesSync.aspx";

//static NSString *urlString = @"http://www.google.cn";

NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:[NSURL URLWithString:urlString]];

NSString *httpBodyString = @"a test string";

NSMutableArray *arrayData = [[NSMutableArray alloc] init];

NSMutableDictionary *dlist = [[NSMutableDictionary alloc] init];

[dlist setObject:@"tblArea" forKey:@"tableName"];

[dlist setObject:@"2009-10-24 11:20:00" forKey:@"lastChangeDate"];

[arrayData addObject:dlist];

//[request setHTTPBody:[httpBodyString dataUsingEncoding:NSUTF8StringEncoding]];

//

//post = [[NSString alloc] initWithFormat:@"message=%@",@"hello,world."];

httpBodyString = [arrayData JSONRepresentation];

NSData *postData = [httpBodyString dataUsingEncoding:NSASCIIStringEncoding allowLossyConversion:YES];

[request setHTTPBody:postData];

[request setHTTPMethod:@"POST"];

//

NSURLResponse *reponse;

NSError *error = nil;

//

NSData *responseData = [NSURLConnection sendSynchronousRequest:request returningResponse:&reponse error:&error];

if (error) {

NSLog(@"Something wrong: %@",[error description]);

}else {

if (responseData) {

NSString *responseString = [[NSString alloc] initWithData:responseData encoding:NSUTF8StringEncoding];

NSLog(@"get %@",responseString);

}

}

NSMutableDictionary *dgetData = [responseString JSONValue];

NSLog(@"dgetData: %@" , [dgetData description]);

[dlist release];

[arrayData release];
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: