Raj Upadhyay
Raj Upadhyay

Reputation: 25

AFNetworking Error Domain=com.alamofire.error.serialization.response Code=-1011 "Request failed: bad request (400)"

In POSTMAN:

https://i.sstatic.net/GoFMq.png

I'm getting response but in XCode I got error and here is my code:

NSString *tokenStr=[NSString stringWithFormat:@"%@",[[NSUserDefaults standardUserDefaults]objectForKey:@"token"]];

NSString *newString = [tokenStr stringByReplacingOccurrencesOfString:@"\"" withString:@""];
NSLog(@"Token iss %@",newString);

AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];

[manager.requestSerializer setValue:newString forHTTPHeaderField:@"Authorization-Token"];
[manager.requestSerializer setValue:@"5C063BDB-40EC-4EDE-8C0C-830D4437E056" forHTTPHeaderField:@"Authorization-Key"];
[manager.requestSerializer setValue:@"[email protected]" forHTTPHeaderField:@"UserName"];
[manager.requestSerializer setValue:@"123456" forHTTPHeaderField:@"UserPassword"];

manager.requestSerializer = [AFHTTPRequestSerializer serializer];
manager.responseSerializer = [AFHTTPResponseSerializer serializer];



manager.responseSerializer.acceptableContentTypes = [NSSet setWithObjects:@"application/json", @"text/json", @"text/javascript", @"text/html",@"text/plain", nil];



[manager GET:BaseURLStringLogin parameters:nil success:^(AFHTTPRequestOperation *operation, id responseObject) {
    NSLog(@"JSON: %@", responseObject);
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
    NSLog(@"Bhai Error: %@", error);
    UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"Error Retrieving Data"
                                                                                          message:[error localizedDescription]
                                                                                         delegate:nil
                                                                                cancelButtonTitle:@"Ok"
                                                                                otherButtonTitles:nil];
                                      [alertView show];

}];

Upvotes: 0

Views: 5393

Answers (1)

Palpatim
Palpatim

Reputation: 9272

That HTTP 400 error is returned from the server, which means the server-side app isn't happy with something about your request. If you have access to the server logs, investigate them and see if they give more detail about what is missing/malformed.

Just from looking, though, I see you set a bunch of values on your manager.requestSerializer, but then overwrite the manager.requestSerializer with a default manager.requestSerializer = [AFHTTPRequestSerializer serializer];, which means all your customized configuration values would be overwritten. Try setting your config values after the serializer assignment:

manager.requestSerializer = [AFHTTPRequestSerializer serializer];
manager.responseSerializer = [AFHTTPResponseSerializer serializer];

[manager.requestSerializer setValue:newString forHTTPHeaderField:@"Authorization-Token"];
[manager.requestSerializer setValue:@"5C063BDB-40EC-4EDE-8C0C-830D4437E056" forHTTPHeaderField:@"Authorization-Key"];
[manager.requestSerializer setValue:@"[email protected]" forHTTPHeaderField:@"UserName"];
[manager.requestSerializer setValue:@"123456" forHTTPHeaderField:@"UserPassword"];

Upvotes: 4

Related Questions