3

I am using Afnetworking Framework but every time i hit the web service the response is always as below-

Error Domain=com.alamofire.error.serialization.response Code=-1011 "Request failed: unauthorized (401)" UserInfo={com.alamofire.serialization.response.error.response

and i have used the code below Can anyone help me-

 NSString * finalUlr =  [kMainUrl stringByAppendingString:url];
AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];
manager.requestSerializer = [AFJSONRequestSerializer serializer];
[manager.requestSerializer setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
[manager.requestSerializer setValue:@"1f76f057-1809-0bfd-5b53-f2f6c2d3ab81" forHTTPHeaderField:@"postman-token"];
[manager.requestSerializer setValue:@"qW9Bf_-RxXFz8mtxDqUYYzBN2V9N6he_tOTbSgJskVA" forHTTPHeaderField:@"x-csrf-token"];
[manager POST:finalUlr parameters:Patameters progress:nil success:^(NSURLSessionTask *task, id responseObject) {
    NSLog(@"JSON: Success");
    completionBlock(YES,responseObject);
} failure:^(NSURLSessionTask *operation, NSError *error) {
    NSLog(@"Error: %@", error);
    completionBlock(NO,nil);
}];
  • use AFN like that http://stackoverflow.com/questions/34561215/afnetworking-3-0-migration-how-to-post-with-headers-and-http-body/36299737#36299737 – Vvk Apr 05 '16 at 05:07
  • You should try adding request serializer to your AFHTTPRequestOperationManager. AFJSONRequestSerializer *jsonRequestSerializer = [AFJSONRequestSerializer serializer]; [self.requestOperationManager setRequestSerializer:jsonRequestSerializer]; – Jigar Apr 05 '16 at 05:08

2 Answers2

-1

Try this

NSString * finalUlr =  [kMainUrl stringByAppendingString:url];

NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:finalUlr] cachePolicy:NSURLRequestReloadIgnoringCacheData  timeoutInterval:10];

    [request setHTTPMethod:GET_METHOD]; // or POST_METHOD
    [request setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
    [request setValue:@"1f76f057-1809-0bfd-5b53-f2f6c2d3ab81" forHTTPHeaderField:@"postman-token"];
    [request setValue:@"qW9Bf_-RxXFz8mtxDqUYYzBN2V9N6he_tOTbSgJskVA" forHTTPHeaderField:@"x-csrf-token"];

    AFHTTPRequestOperation *op = [[AFHTTPRequestOperation alloc] initWithRequest:request];
    op.responseSerializer = [AFJSONResponseSerializer serializer];
    [op setCompletionBlockWithSuccess:^(AFHTTPRequestOperation *operation, id responseObject)
     {
         if (responseObject)
         {

         }
         else
         {
         }
     } failure:^(AFHTTPRequestOperation *operation, NSError *error){
     }];

    [op start];

hope this helps

Kamlesh Shingarakhiya
  • 2,757
  • 2
  • 16
  • 34
-1

Hope It Works For You..

AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];
manager.responseSerializer = [AFJSONResponseSerializer serializer];
manager.responseSerializer.acceptableContentTypes = [manager.responseSerializer.acceptableContentTypes setByAddingObject:@"text/html"];


[manager POST:str6 parameters:@{} progress:nil success:^(NSURLSessionTask *task , id responseObject)
 {

     NSLog(@"%@",responseObject);

 }failure:^(NSURLSessionTask *operation ,NSError *error)
 {

 }];

Note:-

1)Here in str6 use your url.

2)In parameters use your parameters.

you can pass parameters like this...

NSDictionary *dict =[[NSDictionary alloc]initWithObjectsAndKeys:strEmail,@"email",strPassword,@"password",uniqueIdentifier,@"session_id", nil];

Here strEmail is your value and so on..

@"email" is your key and so on..

Akash Raghani
  • 557
  • 1
  • 9
  • 21