如何在post方法中将字符串作为参数传递

时间:2016-05-02 11:08:25

标签: ios http-post parameter-passing nsurlrequest

我是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];
    }
}

1 个答案:

答案 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

}