ios - 解析 JSON 问题 - iOS

标签 ios objective-c json cocoa-touch nsdata

我有一个发出 POST 请求的简单应用。然后返回数据。问题是返回的数据不是json.....那怎么查看呢?这是我的代码:

NSString *requestString = [NSString stringWithFormat:@"https://serveraddress.com"];
    NSString *string = [NSString stringWithFormat:@"id=%@&olt_info=%@", @"test", @"renz"];
    NSData *postData = [string dataUsingEncoding:NSUTF8StringEncoding];
    NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:requestString]];
    NSLog(@"\n request str : %@",request);

    [request setHTTPMethod:@"POST"];
    [request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"];
    [request setHTTPBody:postData];

    NSHTTPURLResponse *response = nil;
    NSError *error = nil;
    NSData *responseData = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error];
    NSLog(@"The responce:\n\n%@", responseData);

    if (error == nil && response.statusCode == 200) {
        NSLog(@"%li", (long)response.statusCode);

        NSError *err;
        id JSon = [NSJSONSerialization JSONObjectWithData:responseData options:kNilOptions error:&err];

        if (err) {
            NSLog(@"%@",err);
        }

        else {
            NSLog(@"Json %@",JSon);

        }
    }

    else {
        //Error handling
        NSLog(@"%@", response);
    }

这是我试图读取的返回数据的格式:

new_token=509723045780uIRBWRBH24b

所以我知道下载的数据存储在名为“responseData”的 NSData 中。但是如果我使用 NSLog 打印它,我就会得到这个:

<61636365 73735f74 6f6b656e 3d313538 32353838 33343337 39343431 7c365f4d 6543436e 6b51716f 722d6e70 61746662 484d6458 526b3477>

那么我该如何阅读呢???

谢谢你抽出时间,丹。

最佳答案

使用 NSData 获取 NSString

NSString *decodedString = [[NSString alloc] initWithData:responseData encoding:NSUTF8StringEncoding];

也许这个字符串将具有有效的 JSON 格式。

关于ios - 解析 JSON 问题 - iOS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23158669/

相关文章:

core-data - 核心数据对象在其相关对象的属性更改时更新

objective-c - 如何向此 API 提交 JSON 数组?

c# - 从 ASP.NET Web Api 中的中间件访问 JsonOptions

c# - 如何在 C# 中创建自定义 JSON 以及返回值应该是什么?

iphone - 内部图像需要多种分辨率?

ios - 我想在 ios 的 tableview 上从电话中获取联系人列表?

java - Spring Boot JSON解析错误: Cannot deserialize error

javascript - 如何将键和零浮点值附加到对象数组中的对象? - JavaScript

ios - 从 WkWebView 打开外部链接到一个新的 WKWebview

iphone - 如何解决 Objective C 中函数的警告隐式声明