title: iOS POST request with AFNetworking
body: <p>I am using AFNetworking to make a POST request to a web service</p>
  
  <p>This is the JSON that I need to send-</p>
  
  <pre><code>{
     “LinkedTo” : {
                              “IndividualStakeholder” : “”,
                              “GroupedStakeholder” : “”,
                              “LandParcelStakeholder” : “”,
                              “Communications” : “”,
                              “Team” : “”,
                              “Issue” : “”,
                              “Event” : “”
                          }
     “userId” : 170,
     “projectId”: 12
  }
  </code></pre>
  
  <p>This is the code I am using -</p>
  
  <pre><code>NSString *jsonData = [self JSONString:jsonData1];
  </code></pre>
  
  <p>The value in <code>NSString *jsonData</code> at this point is </p>
  
  <blockquote>
    <p>{\"LinkedTo\":{\"IndividualStakeholder\":\"\",\"GroupedStakeholder\":\"\",\"LandParcelStakeholder\":\"\",\"Communications\":\"\",\"Team\":\"\",\"Issue\":\"\",\"Event\":\"\"},\"userId\":170,\"projectId\":4}</p>
  </blockquote>
  
  <pre><code>NSURL *url = [[NSURL alloc]initWithString:@"https://somedomain.com/"];
  AFHTTPClient *httpClient = [[AFHTTPClient alloc]initWithBaseURL:url];
  NSDictionary *params = [NSDictionary dictionaryWithObjectsAndKeys:
                               jsonData, @"jsonText" , nil];
  NSURLRequest *request = [httpClient requestWithMethod:@"POST" path:@"https://somedomain.com/api/stakeholders" parameters:params];
  
  AFJSONRequestOperation *operation = [AFJSONRequestOperation JSONRequestOperationWithRequest:request 
      success:^(NSURLRequest *request, NSHTTPURLResponse *response, id JSON){
          NSLog(@"Inside the success block %@",JSON);
      }
      failure:^(NSURLRequest *request, NSHTTPURLResponse *response, NSError *error, id JSON){
          NSLog(@"json text is: %@", JSON);
          NSLog(@"Request failed with error: %@, %@", error, error.userInfo);
      }];
  [operation start];
  
  
  
  -(NSString*)JSONString :(NSString*)aString{
      NSMutableString *s = [NSMutableString stringWithString:aString];
      [s replaceOccurrencesOfString:@"\"" withString:@"\\\"" options:NSCaseInsensitiveSearch range:NSMakeRange(0, [s length])];
      [s replaceOccurrencesOfString:@"/" withString:@"\\/" options:NSCaseInsensitiveSearch range:NSMakeRange(0, [s length])];
      [s replaceOccurrencesOfString:@"\n" withString:@"\\n" options:NSCaseInsensitiveSearch range:NSMakeRange(0, [s length])];
      [s replaceOccurrencesOfString:@"\b" withString:@"\\b" options:NSCaseInsensitiveSearch range:NSMakeRange(0, [s length])];
      [s replaceOccurrencesOfString:@"\f" withString:@"\\f" options:NSCaseInsensitiveSearch range:NSMakeRange(0, [s length])];
      [s replaceOccurrencesOfString:@"\r" withString:@"\\r" options:NSCaseInsensitiveSearch range:NSMakeRange(0, [s length])];
      [s replaceOccurrencesOfString:@"\t" withString:@"\\t" options:NSCaseInsensitiveSearch range:NSMakeRange(0, [s length])];
      return [NSString stringWithString:s];
  }
  </code></pre>
  
  <p><strong>The error on the server is</strong> - Request format is unrecognized for URL unexpectedly ending in '/stakeholders'. Which is an error in asp.net throws when deserializing the posted JSON</p>
  
  <p>The output I am receiving on the client is </p>
  
  <p>Request failed with error: Error Domain=com.alamofire.networking.error Code=-1011 "Expected status code [number of indexes: 100 (in 1 ranges), indexes: (200-299)], got 500" UserInfo=0x8e95e60 {NSErrorFailingURLKey=<a href="https://somedomain.com/api/stakeholders" rel="nofollow">https://somedomain.com/api/stakeholders</a>, NSLocalizedDescription=Expected status code [number of indexes: 100 (in 1 ranges), indexes: (200-299)], got 500}, {
      NSErrorFailingURLKey = "<a href="https://somedomain.com/api/stakeholders" rel="nofollow">https://somedomain.com/api/stakeholders</a>";
      NSLocalizedDescription = "Expected status code [number of indexes: 100 (in 1 ranges), indexes: (200-299)], got 500";
  }
  2013-02-25 11:03:44.669 NetworkPlugin[60069:c07] </p>