后端程序接受前台传递过来json

1正常json没有问题 比如 

{
"id":21,
"userName":"2张天师",
"phone":"15175220421",
"remark":"1adfadfsa",
"departMent":"1产品部",
"roleId":2
}

后台可以正常解析  var extraObj = JsonConvert.DeserializeObject<UpdateUserModel>(json);

或者

dynamic request = JsonConvert.DeserializeObject<DynamicDictionary>(req.Data.ToStringUtf8());
int id = (int)request.id;
string extra = request.userName;

2 前台json 中包含json对象正常 解析方法同上

{
"id": 21,
"extra": { \"test\": 5}
}

3前台json中包含json字符串 容易出现解析失败的问题

{
"id": 21,
"extra": "{ \"test\": 5}"
}

由于我需要在后台代码拼接json

extra 又是一个对象

string json = "{ \"id\":21,\"extra\":\"  +JsonConvert.SerializeObject(updateObj)+    \"  }"

这样拼接完后  是无法解析该json的

正确的格式应该是

string json = "{ \"id\":21,\"extra\":\"  \\\"test\\\":5  \"  }"

解决方法:

JObject j = new JObject();
j.Add("id", extraObj.id);
j.Add("extra", JsonConvert.SerializeObject(updateObj));

j.ToString()就是正确的json字符串了

json转义问题的更多相关文章

  1. json转义处理

    php把参数转成json字符串,中文会变成unicode,有部分会自动转义(添加反斜杠\) json_encode() #中文不转义对应的数字 256) json_encode($data,JSON_ ...

  2. 关于json转义中文

    服务器传递或者程序传递中,不识别读取到的JSON数据中 \u开头的数据. PHP 生成JSON的时候,必须将汉字不转义为 \u开头的UNICODE数据. 网上很多,但是其实都是错误的,正确的方法是在j ...

  3. angular json转义html

    第一步json输出的内容反编码 function htmldecode(s){ var div = document.createElement('div'); div.innerHTML = s; ...

  4. json转义字符串

    json前台写数据 @RequestMapping("/addUserJson") public void addUserJson(User user,HttpServletReq ...

  5. Json——转义符

    C#后台直接输出Json字符串需要反斜杠“\” context.Response.Write("[{\"Name\": \"wqx\", \" ...

  6. json转义 使用 JavaScriptSerializer 时 需要添加的引用

    当创建JavaScriptSerializer创建对象时,JavaScriptSerializer jss=new JavaScriptSerializer():时. 1.   需要添加的是Syste ...

  7. java json转义引号

    String jsonMapStr = "{\"system\":\"1,\\\"2\\\",3\",\"createD ...

  8. 正确的前端传后台json方式

    DEMO: var data=JSON.stringify({"page": {"pagenow": 1,"pagesize": 20},& ...

  9. Json数据处理协议与办法

    [JSON学习]     一.概述     JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,采用完全独立于语言的文 本格式,是理想的数据交换格式.同时,J ...

随机推荐

  1. git version info & svn version info map(七)

    To generate the same version number as SVN, we can generate the same version number as SVN with the ...

  2. WinDbg常用命令系列---线程栈中局部上下文切换.frame

    .frame (Set Local Context) .frame命令指定使用哪个本地上下文(作用域)解释本地变量或显示当前本地上下文. .frame [/c] [/r] [FrameNumber] ...

  3. .bat批处理命令之设置关机倒计时脚本

    @ECHO off REM 不显示后续命令行及当前命令行 TITLE Shutdown countdown REM 设置脚本标题 COLOR 0A REM 设置脚本 背景色为黑色 前景色为淡绿色 :s ...

  4. Fluent也弹窗

    具体步骤见<fluent加载第三方(C++,Fortran等)动态链接库> 我们对导入的动态链接库进行改动 打开VS2013 源代码: #include #ifdef __cplusplu ...

  5. 【转】理解Docker容器网络之Linux Network Namespace

    原文:理解Docker容器网络之Linux Network Namespace 由于2016年年中调换工作的原因,对容器网络的研究中断过一段时间.随着当前项目对Kubernetes应用的深入,我感觉之 ...

  6. MUD游戏开发教程视频

    MUD游戏开发教程视频 https://space.bilibili.com/476328540/channel/detail?cid=91187

  7. effictive-python笔记

    第一章 用Pythonic方式来思考 1.确认自己所用的python版本(python3) 两个主流的python版本:python2(2020年就不维护) python3(推荐) 多种流行的pyth ...

  8. 【环境搭建与软件安装】windows系统基于Anaconda安装tensorflow-gpu

    https://github.com/tensorflow/tensorflow/issues/21832 原来是tensorflow-gpu-1.10.0,准备改为1.9.0试试,同样的问题: 应该 ...

  9. Web服务器、应用程序服务器、web应用服务器、反向代理服务器

    参考链接:https://www.cnblogs.com/zhaoyl/archive/2012/10/10/2718575.html 首先我们来了解什么是服务器(server) 一般来说,serve ...

  10. 【电商日志项目之五】数据分析-MR方式

    环境 hadoop-2.6.5 hbase-0.98.12.1-hadoop2 新增用户指标分析(1)用户分析模块 (2)浏览器分析模块 根据分析效果图,找出分析的维度:用户分析是指某个时间段内的数量 ...