цель c — iOS — сбой AFNetworking при подключении страницы PHP

Я создал онлайн-страницу PHP в Cloud9, в которой я могу подключиться к базе данных MySQL и делать все, что хочу. Я могу подключить эту страницу из симулятора приложений iOS без использования AFNetworking. Тем не менее, я должен использовать эту библиотеку и создать запрос POST.
Мой запрос POST терпит неудачу и дает эту ошибку:

Ошибка: Ошибка домена = NSCocoaErrorDomain Code = 3840 «Операция
не может быть завершено. (Ошибка какао 3840.) «(текст JSON не начался
с массивом или объектом и возможностью разрешать фрагменты не установлены.)
{NSDebugDescription = текст JSON не начинался с массива или объекта и
возможность разрешить фрагменты не установлены.}

Мой код Objective C:

NSString *url = [URLFactory targetURL];
NSDictionary *dictionary = @{
@"key" : @"value",
};

AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];

[manager POST:url parameters:dictionary success:^(AFHTTPRequestOperation *operation, id responseObject)
{
NSLog(@"Response : %@",responseObject);
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {

NSLog(@"Here!");

NSLog(@"Error : %@",error);
}];

И PHP:

<?php
header('Content-type: application/json');
$isPostRequest = $_SERVER['REQUEST_METHOD'] == 'POST';

if ($isPostRequest) {

echo json_encode("done!");
}
?>

Как видите, я пока ничего не делаю. Я проверю параметры, но сейчас я просто хочу соединения. Я вижу «Здесь!» войти и получить ошибку. Я что-то не так делаю или чего-то не хватает? Я нашел несколько сообщений об этой ошибке, но они не находятся в ситуации отказа. Таким образом, я запутался.

Спасибо!

0

Решение

Попробуйте изменить свой код, чтобы сделать массив следующим образом:

echo json_encode(array("response" => "done!"));

Затем в вашем коде iOS получите объект ответа:

NSArray *jsonObjects = [responseObject objectForKey:@"response"];
0

Другие решения

Других решений пока нет …