2011-12-22 2 views
1

Вот мой Objective-C код:Проводка с AFNetworking, параметры не отправляются?

NSDictionary *params = [NSDictionary dictionaryWithObjectsAndKeys: 
          @"fname", @"fname", 
          @"age", @"age", 
          nil]; 

NSMutableURLRequest *request = [httpClient requestWithMethod:@"POST" path:@"testpost.php" parameters:params]; 

Вот мой код в PHP:

Welcome <?php echo $_POST["fname"]; ?>!<br /> 
You are <?php echo $_POST["age"]; ?> years old. 

Однако, когда я получаю ответ обратно в Obj-C, все, что я вижу:

успех: Добро пожаловать!
Вы лет.

Что я делаю неправильно? :(

+1

Образец кода работает только для создания объекта NSURLRequest и не показывает код для создания и запуска операции (например, с помощью 'AFHTTPClient -HTTPRequestOperationWithRequest: success: failure' и' AFHTTPClient -enqueueHTTPRequestOperation: «Не могли бы вы добавить это к своему первоначальному вопросу? – mattt

ответ

0

Часть проблемы, кажется, что вы действительно должны использовать фактические значения (или объекты) для этих ключей?

NSDictionary *params = [NSDictionary dictionaryWithObjectsAndKeys: 
          yourNameObjectAsNSString, @"fname", 
          yourAgeObjectAsNSNumber, @"age", 
          nil]; 

Это не объясняет, почему вы не видите ничего для переменной fname на стороне PHP (я бы ожидал, что это будет fname, так как это строка, которую вы установили в своем текущем объекте NSDictionary), но это может помочь вам приблизиться к финишной линии.

2

Моя ставка заключается в том, что вы попытались упростить свой вопрос, и ваш реальный код выглядит примерно так:

NSDictionary *params = [NSDictionary dictionaryWithObjectsAndKeys: 
          @"id", @"id", 
          nil, @"bla", 
          @"fname", @"fname", 
          @"age", @"age", 
          nil]; 

NSMutableURLRequest *request = [httpClient requestWithMethod:@"POST" path:@"testpost.php" parameters:params]; 

Если вы назначили всухую значение ключа, как это в вашем словаре (вероятно, не нарочно), ваш сервер будет только способен считывать параметры до этого значения - в моем примере только ид. Поэтому проверьте значения nil в словаре params.

Смежные вопросы