Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
156 views
in Technique[技术] by (71.8m points)

ios - How to make json post request?

I have to make json post request with the following request parameters,

{   
    "method":"login", 
    "data":{  
        "username":"korea", 
        "password":"123456" 
    } 
} 

I use the following code to make the request,

NSString *jsonRequest = [NSString stringWithFormat:@"{"""method:"login"",""data:"{""username":"%@","password":"%@"}",username,password];
    NSLog(@"Request: %@", jsonRequest);

    NSURL *url = [NSURL URLWithString:@"http://myurl..."];

    NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:url];
    NSData *requestData = [NSData dataWithBytes:[jsonRequest UTF8String] length:[jsonRequest length]];

    [request setHTTPMethod:@"POST"];
    [request setValue:@"application/json" forHTTPHeaderField:@"Accept"];
    [request setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
    [request setValue:[NSString stringWithFormat:@"%d", [requestData length]] forHTTPHeaderField:@"Content-Length"];
    [request setHTTPBody: requestData];

    NSURLConnection *connection = [NSURLConnection connectionWithRequest:request delegate:self];

I have to get the response but Im not be able to get the response

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

Try this

    NSDictionary *objectDic = @{@"username" : username, @"password" : password};
    NSDictionary *dataDic = @{@"data" : objectDic};
    NSDictionary *methodDic = @{@"method" : @"login", @"data": dataDic};

    NSData *requestData = [NSJSONSerialization dataWithJSONObject:methodDic
                                               options:NSJSONWritingPrettyPrinted
                                                 error:nil];
    [request setHTTPBody: requestData];

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...