post请求json内容丢失问题
今天在项目组用json传输数据 post方法提交 发现传输过去的数据json内的+ 号被直接干掉了.
后来传输之前直接先编码.

接收端:
public void ProcessRequest(HttpContext context)
{
ReturnResult result = new ReturnResult();
var method = context.Request.QueryString["method"].ToString(); byte[] byts = new byte[HttpContext.Current.Request.InputStream.Length];
HttpContext.Current.Request.InputStream.Read(byts, , byts.Length);
string req = System.Text.Encoding.Default.GetString(byts);
req = HttpContext.Current.Server.UrlDecode(req); //string p = @"\d{4}-\d{2}-\d{2}\s\d{2}:\d{2}:\d{2}";
//MatchEvaluator matchEvaluator = new MatchEvaluator(ConvertDateStringToJsonDate);
//Regex reg = new Regex(p);
//req = reg.Replace(req, matchEvaluator); try
{
if (context.Request.Params.Count > )
{ if (!string.IsNullOrEmpty(method))
{
switch (method)
{ case DTKeys.URL_PARM_METHOD_SENDMESSAGEREMIND://来自用户信息认证的 附件上传
ContactMsg m = JsonHelper.FromJson<ContactMsg>(req);
SendMessageRemind(m);
break; default:
break;
}
}
}
else
{
result.Status = false;
result.Msg = "未检测的有效文件信息,或者您未登录";
}
}
catch (Exception ex)
{
result.Status = false;
result.Msg = ex.Message;
Log4netHelper.WriteExceptionLog("Beta.ProductMarket.Web.Product.SendMsgToWX.ashx", ex);
}
context.Response.Clear();
context.Response.ContentType = "text/html; charset=utf-8";
context.Response.Write(JsonConvert.SerializeObject(result));
}
post请求json内容丢失问题的更多相关文章
- Web APi之捕获请求原始内容的实现方法以及接受POST请求多个参数多种解决方案(十四)
前言 我们知道在Web APi中捕获原始请求的内容是肯定是很容易的,但是这句话并不是完全正确,前面我们是不是讨论过,在Web APi中,如果对于字符串发出非Get请求我们则会出错,为何?因为Web A ...
- JSOUP 请求JSON
JSOUP请求JSON Document doc = Jsoup .connect(Constant.DATA_URL) .header("Accept", "*/*&q ...
- (转)nginx做转发时,带'_'的header内容丢失
原本在测试环境测试通过的APP,今天准备切到线上环境做最后测试,结果发现了错误.查看日志发现是APP端发送的http请求中的header内容丢失了.那么代码没有改动,怎么平白无故会丢失头信息? 于是想 ...
- ReadyAPI/soapUI发送post请求json格式(带有中文字符),后台获取参数为空
解决:请求编码格式默认为空,在"TestCase"的指定Step的Request Properties中, 改Encoding编码格式为UTF-8. 原文:soapUI发送post ...
- 使用CEfSharp之旅(7)CEFSharp 拦截 http 请求 websocket 内容
原文:使用CEfSharp之旅(7)CEFSharp 拦截 http 请求 websocket 内容 版权声明:本文为博主原创文章,未经博主允许不得转载.可点击关注博主 ,不明白的进群19106581 ...
- [转]在 .NET 中远程请求 https 内容时,发生错误:根据验证过程,远程证书无效
该文原网址:http://www.cnblogs.com/xwgli/p/5487930.html 在 .NET 中远程请求 https 内容时,发生错误:根据验证过程,远程证书无效. 当访问 h ...
- 【C#】菜单功能,将剪贴板JSON内容或者xml内容直接粘贴为类
VS 2015菜单功能,将剪贴板JSON内容或者xml内容直接粘贴为类
- 直接请求json文件爬取天眼查企业信息(未解决验证码问题)——python3实现
几个月前...省略一堆剧情...直接请求json文件爬取企业信息未成功,在知乎提问后,得到解决,有大佬说带上全部headers和cookie是可以的,我就又去试了下,果然可以(之前自己试的时候不行,没 ...
- .net mvc web api 返回 json 内容,过滤值为null的属性
原文:http://blog.csdn.net/xxj_jing/article/details/49508557 版权声明:本文为博主原创文章,未经博主允许不得转载. .net mvc web ap ...
随机推荐
- 文件I/O(不带缓冲)之creat函数
本篇博文内容摘自<UNIX环境高级编程>(第二版),仅作个人学习记录所用.关于本书可参考:http://www.apuebook.com/. 也可调用creat函数创建一个新文件. #in ...
- poj 1654 Area 多边形面积
/* poj 1654 Area 多边形面积 题目意思很简单,但是1000000的point开不了 */ #include<stdio.h> #include<math.h> ...
- php.ini 中开启短标签 <?=$?>
制参数: short_open_tag = On如果设置为Off,则不能正常解析类似于这样形式的php文件:<?phpinfo()?> 而只能解析<?phpphpinfo()?> ...
- Android 自定义View修炼-如何打造Android自定义的下拉列表框控件
一.概述 Android中的有个原生的下拉列表控件Spinner,但是这个控件有时候不符合我们自己的要求, 比如有时候我们需要类似windows 或者web网页中常见的那种下拉列表控件,类似下图这样的 ...
- Java基础知识强化之网络编程笔记19:Android网络通信之 HttpClient和传统Post、Get方式的区别
1. HttpClient是什么 ? HTTP 协议可能是现在 Internet 上使用得最多.最重要的协议了,越来越多的 Java 应用程序需要直接通过 HTTP 协议来访问网络资源.虽然在 ...
- PowerShell 批量增加ACL
$serviceName="云服务名称"$vmName="虚拟机名称"$endPoint="终结点名称"$acl=New-AzureAclC ...
- 今天学习image在html中的应用
今天学习image在html中的应用 上次在学习超级链接的使用中有一小问题,是在添加网址中href="http://www.baidu.com" 中不能忘记http://,否则链接 ...
- 20160512--hibernate--缓存
缓存 缓存的作用主要用来提高性能,可以简单的理解成一个Map:使用缓存涉及到三个操作:把数据放入缓存.从缓存中获取数据.删除缓存中的无效数据. 原理模拟分析:(不能运行,只是模拟)(缓存实现复杂, ...
- db2相关问题及解决方法
DB2相关问题及解决方法: 一.DB2中的代码页(codepage)问题. DB2备份时发生过代码页错误的问题,修改代码页后备份正常,但创建数据库时又发生代码页的错误.这是DB2服务器使用的代码页配置 ...
- JavaScript生成GUID的多种算法小结
全局唯一标识符(GUID,Globally Unique Identifier)也称作 UUID(Universally Unique IDentifier) . GUID是一种由算法生成的二进制长度 ...