簡體   English   中英

iOS-連接PHP頁面時AFNetworking失敗

[英]iOS - AFNetworking failure while connecting PHP page

我在Cloud9中創建了一個在線PHP頁面,在其中可以連接到MySQL數據庫並執行我想做的任何事情。 我可以從iOS應用程序模擬器連接該頁面,而無需使用AFNetworking。 但是,我應該使用該庫並創建一個POST請求。 我的POST請求失敗,並出現以下錯誤:

錯誤:錯誤域= NSCocoaErrorDomain代碼= 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!");
}
?>

如您所見,我還沒有做任何事情。 我會檢查參數,但現在我只想連接。 我看到“這里!” 記錄並獲取錯誤。 我是在做錯什么還是缺少什​​么? 我發現了一些有關此錯誤的帖子,但它們沒有出現故障。 因此我很困惑。

謝謝!

嘗試更改代碼以使數組如下所示:

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

然后在您的iOS代碼中,獲取響應對象:

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM