我正在将数组转换为json并将其发送到服务器。
这是我将数组转换为json的代码:
NSArray *arr=[NSArray arrayWithObjects:@"1",@"2",@"3", nil];
NSData * jsonData = [NSJSONSerialization dataWithJSONObject:arr
options:NSJSONWritingPrettyPrinted error:nil];
NSString *finalJsonString= [[NSString alloc] initWithData:jsonData
encoding:NSUTF8StringEncoding];
NSLog(@"jsonData as string:\n%@", finalJsonString);
我检查过finalJsonString是一个有效的json。以下是将值发布到服务器的代码:
ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url];
request.delegate = self;
[request addRequestHeader:@"Accept" value:@"application/json"];
[request addRequestHeader:@"content-type" value:@"application/json"];
[request setRequestMethod:@"POST"];
[request setPostValue:[finalJsonString stringByTrimmingCharactersInSet:
[NSCharacterSet whitespaceAndNewlineCharacterSet]]forKey:@"order"];
但是当我打印我的请求时它会给我:
`key = order;
value = "[\n \"1\",\n \"2\",\n \"3\"\n]";`
哪个不是有效的json。
我也尝试了“stringByReplacingOccurrencesOfString”方法,但这也没有用。仅在发送请求时出现问题。任何人都可以帮我解决这个问题吗?