我是IOS新手我需要知道如何在NSString
nsurlconnection
方法中将POST
作为参数传递,我传递了字符串但它变空了
viewdidload
:
NSString *parseURL =@"http:url";
NSString *encodeurl =[parseURL stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
NSURL *url = [NSURL URLWithString:encodeurl];
NSData *data = [NSData dataWithContentsOfURL:url];
if(data){
NSError *error;
NSDictionary *json1 = [NSJSONSerialization JSONObjectWithData:data options: kNilOptions error:&error];
arrMsg = [json1 valueForKeyPath:@"Branches.branch_name"];
arrmsg1 =[json1 valueForKeyPath:@"Branches.id"];
NSString *str = [arrmsg1 componentsJoinedByString:@","];
NSLog(@"%@",str);
[self sendDataToServer :@"POST"];
}
发布方法: 在post方法中,我将字符串作为参数
传递-(void) sendDataToServer : (NSString *) method{
//NSString *str = [arrmsg1 componentsJoinedByString:@","];
NSString *post = [NSString stringWithFormat:@"branch_id=%@",str];
NSData *postData = [post dataUsingEncoding:NSASCIIStringEncoding allowLossyConversion:YES];
NSString *postLength = [NSString stringWithFormat:@"%lu", (unsigned long)[post length]];
NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:[NSURL URLWithString:URL]];
[request setHTTPMethod:@"POST"];
[request setValue:postLength forHTTPHeaderField:@"Content-Length"];
[request setHTTPBody:postData];
NSURLConnection *theConnection = [NSURLConnection connectionWithRequest:request delegate:self];
if( theConnection ){
// indicator.hidden = NO;
mutableData = [[NSMutableData alloc]init];
}
}
答案 0 :(得分:0)
你可以这样做
arrMsg = [json1 valueForKeyPath:@"Branches.branch_name"];
arrmsg1 =[json1 valueForKeyPath:@"Branches.id"];
NSString *str = [arrmsg1 componentsJoinedByString:@","];
NSLog(@"%@",str);
// call the method like
[self sendDataToServer :@"POST" params:str];
//创建类似
的方法 -(void) sendDataToServer : (NSString *) method params:(NSString *)str{
NSString *post = [NSString stringWithFormat:@"branch_id=%@",str];
.... continue your work
}