问题是这样出现的:在进行建行B2B网银在线支付时,建行在回调时采用POST方式提交,编码方式为GBK,而我们的系统为ASP.NET,编码UTF-8。通过Request获取的参数是乱码。

题是这

解决办法:从InputStream解析,获取参数。具体代码如下:

1 IServiceProvider provider = (IServiceProvider)HttpContext.Current;
2 HttpWorkerRequest worker = (HttpWorkerRequest)provider.GetService(typeof(HttpWorkerRequest));
3 byte[] bs = worker.GetQueryStringRawBytes();
4 String queryString = Encoding.GetEncoding("GBK").GetString(bs);
5 NameValueCollection querys = HttpUtility.ParseQueryString(queryString);
6 if (querys != null && querys.Count > 0)
7 {
8 foreach (String key in querys.AllKeys)
9 {
10 if (key == "ACC_NAME")
11 {
12 ACC_NAME = querys[key];
13 }
14
15 if (key == "BRANCH_NAME")
16 {
17 BRANCH_NAME = querys[key];
18 }
19 }
20 }
本文转自齐师傅博客园博客,原文链接:http://www.cnblogs.com/youring2/archive/2011/03/03/1969527.html,如需转载请自行联系原作者

[转]建行B2B支付回调参数乱码现象解析相关推荐

  1. 建行B2B支付回调参数乱码现象解析

    建行B2B支付采用Java开发,页面回调采用POST提交方式,编码为GBK.而我们的系统为ASP.NET,编码UTF-8.通过Request获取的参数是乱码,无奈之下,只能从InputStream解析 ...

  2. 建行B2B支付回调参数乱码现象解析(转)

    建行B2B支付采用Java开发,页面回调采用POST提交方式,编码为GBK.而我们的系统为ASP.NET,编码UTF-8.通过Request获取的参数是乱码,无奈之下,只能从InputStream解析 ...

  3. Request 接收参数乱码原理解析

    起因: 今天早上被同事问了一个问题:说接收到的参数是乱码,让我帮着解决一下. 实际情景: 同事负责的平台是Ext.js框架搭建的,web.config配置文件里配置了全局为"GB2312&q ...

  4. 关于支付回调的一些思考

    前段时间在工作中又一次接触到了公司关于支付相关的业务领域,于是又一次重新回顾了工作中使用的支付框架. 之前写过的很多篇文章都是先介绍整体背景,再深入到每一点去做分析,今天打算换种方式,尝试从 why ...

  5. 微信,支付宝支付回调的入参处理方法

    微信的支付回调为xml格式.支付宝回调为json格式.返回的格式如何处理 首先看下回调的入参经过处理后长啥样. 微信的支付回调: 支付宝的支付回调: 微信的支付回调处理: StringBuilder ...

  6. 微信支付配置参数:支付授权目录、回调支付URL

    一.开通微信支付的首要条件是:认证服务号或政府媒体类认证订阅号(一般认证订阅号无法申请微信支付) 二.微信支付分为老版支付和新版支付,除了较早期申请的用户为老版支付,现均为新版微信支付. 三.公众平台 ...

  7. Java 支付宝手机网站支付下单 支付回调 及订单查询实现

    首先,参考官方api: alipay.trade.wap.pay(手机网站支付接口2.0) 官方提供DEMO下载,不过是jsp的 准备工作:平台入驻,签约功能,应用上线,配置秘钥等 使用Alipay ...

  8. 使用NATAPP.cn测试微信支付回调接口

    个人资源与分享网站:http://xiaocaoshare.com/ 1.在工作中,开发微信支付有点的难度的地方就是微信支付回调接口的测试,现在推荐一款在线调试工具https://natapp.cn ...

  9. 支付宝支付 第十集:支付回调

    支付宝支付 第十集:支付回调 一.注意 这里的支付回调最好是自己有一个服务器(阿里云服务器一年70多也不是很贵),博主自己尝试了一下,本机和使用虚拟机模拟服务器的话,支付宝的授权回调信息是传不过来的, ...

最新文章

  1. .net里鼠标选中的text数据怎么获取_Python数据科学实践 | 爬虫1
  2. 微软对学生免费提供Visual Studio等开发软件(包括中国)
  3. (十二)struts2的类型转换
  4. legend3---lavarel安装debugbar工具条
  5. 【ArcGIS遇上Python】ArcGIS批量处理栅格影像(NDVI)归一化完整案例代码
  6. groovy 字符串截取最后一个_Python入门高级教程--Python 字符串
  7. robot motion planning介绍
  8. chrome 无法抓屏的问题
  9. LoadDruidSegmentStep failed SQLException: Cannot load JDBC driver class ‘com.mysql.jdbc.Driver‘
  10. cocos2d-x学习记录3——CCTouch触摸响应
  11. paip.NullPointerException --ApplicationImpl. createValueBinding错误的解决
  12. inotify+unison双向同步环境部署
  13. H5音乐播放器skPlayer,已支持拉取网易云音乐歌单。
  14. 游戏运行时,WIN2003报错:设备 \Device\Harddisk0有一个不正确的区块。
  15. [JL]最后的晚餐 动态规划(DP) codevs5318
  16. 估计一个点云的表面法线
  17. 分门别类输入输出,Go lang1.18入门精炼教程,由白丁入鸿儒,go lang基本数据类型和输入输出EP03
  18. c语言自己走时间的程序,c语言用哪些语句能实现时间暂停?比方说按某一个键使时间暂停,再按一次使时间继续。...
  19. 用python分析四大名著(一)
  20. Spring学习【2】

热门文章

  1. 仿抖音右滑清屏,左滑列表功能
  2. 问题,缺陷,任务管理系统 Cynthia
  3. 成功解决LINK : fatal error LNK1181: 无法打开输入文件“avdevice.lib” error: command 'D:\\Program Files (x86)\\Micr
  4. Android 架构演进及未来,主流app开发工具
  5. Canvas 贪吃蛇大作战
  6. 2020年王鼎杯反序列化题目复现
  7. 大噶好,今天是应景的二分法
  8. Human Body 身体部位名称
  9. Mac端Charles抓包之后unkown的具体解决方案
  10. lisp正负调换_坐标提取lisp程序 -