Code that implements the same function of POST asynchronous requests by ASI and AFN, asiafn

Source: Internet
Author: User

Code that implements the same function of POST asynchronous requests by ASI and AFN, asiafn

I'm a newbie in obj-c and have been using asihttp for some of my projects. When doing a post request in asihttp its done this way.

    ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url];    [request setPostValue:height forKey:@"user[height]"];    [request setPostValue:weight forKey:@"user[weight]"];    [request setDelegate:self];    [request startAsynchronous];

How wocould go about doing this is AFNetworking with a code example?
I already got the get Json getrequest working in AFNetworking but this post request is giving me some problems. Thanks for help in advance.


A:

Updated again for AFNetworking 2.0-see bottom

For AFNetworking 1.0:

NSURL *url = [NSURL URLWithString:@"https://mysite.com/"];AFHTTPClient *httpClient = [[AFHTTPClient alloc] initWithBaseURL:url];NSDictionary *params = [NSDictionary dictionaryWithObjectsAndKeys:                        height, @"user[height]",                        weight, @"user[weight]",                        nil];[httpClient postPath:@"/myobject" parameters:params success:^(AFHTTPRequestOperation *operation, id responseObject) {    NSString *responseStr = [[NSString alloc] initWithData:responseObject encoding:NSUTF8StringEncoding];    NSLog(@"Request Successful, response '%@'", responseStr);} failure:^(AFHTTPRequestOperation *operation, NSError *error) {    NSLog(@"[HTTPClient Error]: %@", error.localizedDescription);}];

For AFNetworking 2.0 (and also using the new NSDictionary syntax ):

AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];NSDictionary *params = @{@"user[height]": height,                         @"user[weight]": weight};[manager POST:@"https://mysite.com/myobject" parameters:params success:^(AFHTTPRequestOperation *operation, id responseObject) {    NSLog(@"JSON: %@", responseObject);} failure:^(AFHTTPRequestOperation *operation, NSError *error) {    NSLog(@"Error: %@", error);}];


Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.