zoukankan      html  css  js  c++  java
  • 带双反斜杠的Json数据至单反斜杠的Json数据处理

    假如你光看标题,你只能哦呵呵了!我也看不懂。还是先描述下问题吧。这里是使用微信接口返回了一些数据。因为该串数据包含html标签所以TX是对该串数据进行了编码的。所有的数据是通过Unicode编码的,然后在kindeditor编辑器中中文就变成了u000au0009u000au0009等一些鸟文。

    在C#当中自然就变成了\u000a\u0009\u000a\u0009,通过ASP.NET MVC 的返回JSON的方法: return Json(new { rows = 对象数组 });将带该数据的对象转化为Json后就成了\\u000a\\u0009\\u000a\\u0009。

    第一次,我想要通过前端JS调用replace函数来处理。str.replace(/\\/g,'\');总之各种各样的都试过了,都用不了。
    第二次,通过后台处理一开始直接处理对象属性,也是行不通。原因是\u000a本身就是一个反斜杠,替换之后还会是\u000a。

    最后把先把obj序列化为字符串,然后通过result = result.Replace(@"\", @""); 将双反斜杠处理为单数据从\\u000a\\u0009变成了\u000a\u0009。最后再调用return Json(new { rows = 字符串 });
    两者不是跟之前的一样?NO,有一点还是不一样的,就是rows的值从对象变成了字符串。这说明C#在将对象转化为Json的时候会把单反斜杠\当成双反血杠\\处理,而字符串则不会。

  • 相关阅读:
    Python必须知道的异常处理
    类的内置方法(用实际代码来验证)
    类的三大特性(继承, 封装, 多态)
    面向对象编程代码详解(依赖关系,关联关系,组合关系)
    函数(匿名函数,嵌套函数,高阶函数,装饰器)
    常用模块
    对磁盘文件的操作(文件处理)
    字符编码
    常用数据类型
    编程介绍
  • 原文地址:https://www.cnblogs.com/chenjianxiang/p/4911973.html
Copyright © 2011-2022 走看看