РЕДАКТИРОВАТЬ 14.07
Как упомянул Билл Берджесс в комментарии к своему ответу, этот вопрос связан с version 1.3
из AFNetworking
. Это может быть устаревшим для новичков здесь.
Я новичок в разработке для iPhone и использую AFNetworking в качестве своей библиотеки сервисов.
API, который я запрашиваю, является RESTful, и мне нужно делать запросы POST. Для этого я попытался использовать следующий код:
NSDictionary *parameters = [NSDictionary dictionaryWithObjectsAndKeys:@"my_username", @"username", @"my_password", @"password", nil];
NSURL *url = [NSURL URLWithString:@"http://localhost:8080/login"];
NSURLRequest *request = [NSURLRequest requestWithURL:url];
AFJSONRequestOperation *operation = [AFJSONRequestOperation JSONRequestOperationWithRequest:request success:^(NSURLRequest *request, NSHTTPURLResponse *response, id JSON) {
NSLog(@"Pass Response = %@", JSON);
} failure:^(NSURLRequest *request, NSHTTPURLResponse *response, NSError *error, id JSON) {
NSLog(@"Failed Response : %@", JSON);
}];
[operation start];
Есть две основные проблемы с этим кодом:
AFJSONRequestOperation
кажется, делает запрос GET
, а не POST
.Я также пробовал с этим кодом:
NSDictionary *parameters = [NSDictionary dictionaryWithObjectsAndKeys:@"my_username", @"username", @"my_password", @"password", nil];
NSURL *url = [NSURL URLWithString:@"http://localhost:8080"];
AFHTTPClient *httpClient = [[AFHTTPClient alloc] initWithBaseURL:url];
[httpClient postPath:@"/login" parameters:parameters success:^(AFHTTPRequestOperation *operation, id responseObject) {
NSLog(@"Succes : %@", responseObject);
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
NSLog(@"Failure : %@", error);
}];
Есть ли лучший способ сделать то, что я хочу здесь, чтобы сделать это?
Спасибо за помощь !