ios 请求数据中转义字符"的处理

前言:根据需求,我将一个数组类型(每一个数据都是字典类型)的数据转化为json字符串的形式传给后台。我在需要的地方再请求下来这个数据。结果发现请求下来的数据被转义处理了,引号被转义成"。

1.传给后台的json字符串。

  NSMutableArray *conArr = [[NSMutableArray alloc] initWithCapacity:0];

     for(DynmaticModel*modelinself.dataArray)

     {

         if(model.content&& model.content.length>0) {

             NSDictionary*dic =@{@"type":model.type,@"content":model.content};

             [conArraddObject:dic];

         }

     }

    NSData *priceDta = [NSJSONSerialization dataWithJSONObject:conArr options:kNilOptions error:nil];

    NSString *priceJson = [[NSString alloc] initWithData:priceDta  encoding:NSUTF8StringEncoding];

传给后台的priceJson字符串打印如下:

priceJson = [{"type":"1","content":"啦啦啦1"},{"type":"2","content":"http://fengwojiancai.oss-cn-beijing.aliyuncs.com/ios/20200908151508/2020090815150802.png"},{"type":"1","content":"啦啦啦2"}]

2.上传成功后从后台请求下来的字符串如下:

[{"type":"1","content":"啦啦啦1"},{"type":"2","content":"http:\/\/fengwojiancai.oss-cn-beijing.aliyuncs.com\/ios\/20200908151508\/2020090815150802.png"},{"type":"1","content":"啦啦啦2"}]

3.如何处理:

(1)将字符串中的"用引号替换

 NSString *str = [ text stringByReplacingOccurrencesOfString:@""" withString:@"\""];

这个str就是你传上去的json字符串。

(2)将json转化为数组

NSData *JSONData = [str dataUsingEncoding:NSUTF8StringEncoding];

        NSError*error =nil;

        NSArray * arr = [NSJSONSerialization JSONObjectWithData:JSONData options:NSJSONReadingAllowFragments error:&error];

        for(NSDictionary *dic  in  arr) {

            NSLog(@"dic = %@",dic);

        }

这样就ok了!

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容