从PHP解析JSON:应用程序崩溃

从PHP解析JSON:应用程序崩溃,php,objective-c,json,echo,Php,Objective C,Json,Echo,我的应用程序在解析PHP中的JSON时遇到了一些问题。我所做的是在PHP上使用echo(JSON_编码)数组,当我使用url时,它会在浏览器上返回JSON格式 问题是,当我试图解析它时,应用程序崩溃,说数据为空 这是我正在使用的url(PHP): 下面是解析它的代码: // Download JSON NSData *JSONData = [NSData dataWithContentsOfURL:[NSURL URLWithString:theURL]]; NSLog

我的应用程序在解析PHP中的JSON时遇到了一些问题。我所做的是在PHP上使用echo(JSON_编码)数组,当我使用url时,它会在浏览器上返回JSON格式

问题是,当我试图解析它时,应用程序崩溃,说数据为空

这是我正在使用的url(PHP):

下面是解析它的代码:

    // Download JSON
    NSData *JSONData = [NSData dataWithContentsOfURL:[NSURL URLWithString:theURL]];
    NSLog(@"%@",JSONData);
    // Parse JSON
    NSArray *jsonResult = [NSJSONSerialization JSONObjectWithData:JSONData options:kNilOptions error:nil];
    self.data = jsonResult;
    NSMutableArray *_names = [NSMutableArray array];
    for (id item in jsonResult)
        [_names addObject:[NSString stringWithFormat:@"%@ %@", item[@"Name"], item[@"Last"]]];
    self.names = _names;
应用程序崩溃,错误代码如下:

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'data parameter is nil'
但是,如果我使用这个url(JSON格式,txt),代码运行良好:

区别在于它是一个JSON格式的.txt文件

为什么应用程序会崩溃?有什么建议吗


谢谢大家!

iamitman站点的响应标题中的
内容类型是“text/html”,其中另一个是“text/plain”。如果您将其设置为使用特定于JSON的内容类型(如“application/JSON”),它是否可以工作?这个更改必须在服务器上完成,或者我必须在运行PHP的服务器上的应用程序本身上完成。您可以使用PHP
header()
函数设置内容类型OK!我要试试看!如果行得通,我会告诉你的。