可可错误3840 - NSJSONSerialization

Nee*_*ers 1 json nsjsonserialization

我正在尝试解析从ASP.NET Web服务返回的JSON字符串.返回字符串已简化为:

<anyType d1p1:type="q1:string">[{"Firstname":"Johnny"}]</anyType>
Run Code Online (Sandbox Code Playgroud)

当我在xcode中运行以下代码时,我收到错误"Error Domain = NSCocoaErrorDomainCode = 3840"..."JSON文本没有以数组或对象开头,并且选项允许片段未设置"

NSURL *url = [NSURL URLWithString:@"http://webserver.com/Service.asmx/GetNames"];
    NSData *data = [NSData dataWithContentsOfURL:url];
      if(data != nil)
        {
            NSError *error = nil;
            id result = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:&error];
                if(error == nil)
        {
            NSLog(@"%@", result);
        }else{
            NSLog(@"%@",error);
        }
    }else{
        NSLog(@"it's nil");
    }
Run Code Online (Sandbox Code Playgroud)

我不确定该怎么办?错误似乎在"id result ="行上.

*我认为它可能是我的reutrn字符串的格式,但我在ASP.NET帖子上阅读的所有内容都说这是正确的.

*我已将"NSJSONReadingMutableContainers"更改为"NSJSONReadingMutableLeves"

Mik*_*ahy 6

是Web服务真的返回了<anyType d1p1:type="q1:string">和</anyType>该字符串的部分文件的内容中?如果是这样,那就是问题:有效的JSON字符串就是:

[{"Firstname":"Johnny"}],

这是您的Web响应应包含的唯一内容.有角度的括号中的所有东西实际上都不是JSON数据,而是抛出解析器.