提交application/x-www-form-urlencoded类型数据


发送application/x-www-form-urlencoded接收通知

举例:发送通知以及接收通知

说明:此demo非常简化,使用tomcat服务器运行,本文说明:

  • 包含文件
    1.SendNotification.jsp:发送通知页面,表单提交数据的类型为multipart/x-www-form-urlencoded
    2.RecvNotification.jsp:接收通知页面
    3.页面简单使用了Bootstrap样式
  • 接收参数方式 :request.getParameter(“param”);

Demo下载地址:

http://download.csdn.net/detail/musuny/8761707


关键代码

  • SendNotification.jsp

    <form action="RecvNotification.jsp" method="post" enctype="application/x-www-form-urlencoded">
    <table class="table-responsive"><tr><td><span>message:</span><textarea  rows="5" class="form-control" name="message" id="message" content=""placeholder="例如:PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiID8%2BPE1vQmFvQWNjb3VudCBNZXNzYWdlVHlwZT0iTm90aWZ5UGF5UmVzdWx0Ij48T3JkZXJObz5NMjAxNTA1NTYwOTg4MzY8L09yZGVyTm8%2BPFRyYWRlQW10PjUwMDAuMDA8L1RyYWRlQW10PjxDdXN0UGFyYW0%2BMTIzPC9DdXN0UGFyYW0%2BPFRyYWRlVGltZT48L1RyYWRlVGltZT48L01vQmFvQWNjb3VudD4="></textarea><br/></td></tr><tr><td><span>signature:</span><textarea  class="form-control" rows="5" name="signature" id="signature"placeholder="例如:33D13212133895FB6AF9C1556948996AC4A636F6A98E1E9DDE6296D0179E7466BF04C44F97EA3E6A29B69FED16C36C14BD8BFAFCB04806579573DC2F560DDB9820B4CC242038B33BC444C2C143D76EA9AD4F8F824EB9D1B5963DC867AA8B0C11D5B7A2D981151642E6DEDA845D94D9731ECD42E668AEA0D7EDD00C5817EF5DE8"content=""></textarea><br/></td></tr>
    </table><input type="button" onclick="setDefaultValue()" style="margin-left: 200px;" value="使用默认值" class="btn-lg btn-success"/>
    <input type="submit" value="模拟发送通知" style="margin-left: 200px;" class="btn-lg btn-danger"/>
    </form>
  • RecvNotification.jsp

<%String ip = request.getHeader("X-Forwarded-For");if (ip == null)ip = request.getRemoteHost();Map param = new HashMap();param.put("ip", ip);String message = request.getParameter("message");param.put("message", message);String signature = request.getParameter("signature");param.put("signature", signature);String messageDecode = URLDecoder.decode(message, "UTF-8");String base64decoded = new String(new BASE64Decoder().decodeBuffer(messageDecode), "GBK");param.put("base64decoded", base64decoded);request.setAttribute("notification", param);Map notification = (Map) request.getAttribute("notification");
%>
<h2>接收到的支付通知消息</h2><div class="table-responsive"><table border="1" class="table table-bordered table-hover"><thead><td class="col-lg-1 ">字段名</td><td class="col-lg-6 ">接收到的值</td><td class="col-lg-3 ">说明</td></thead><tr><td class="col-lg-1 ">IP地址</td><td class="col-lg-6 "><%=notification.get("ip")%></td><td class="col-lg-3 ">支付通知方IP地址</td></tr><tr><td class="col-lg-1 ">message</td><td class="col-lg-6 "><textarea rows="5" class="form-control" cols="300" readonly><%=notification.get("message")%></textarea></td><td class="col-lg-3 ">message经过base64编码以及URLEncode UTF-8编码</td></tr><tr><td class="col-lg-1 ">message明文</td><td class="col-lg-6 "><textarea rows="5" class="form-control" cols="300" readonly><%=notification.get("base64decoded")%></textarea></td><td class="col-lg-3 ">message经过base64解码以及URLEncode UTF-8解码</td></tr><tr><td class="col-lg-1">signature</td><td class="col-lg-6 "><textarea rows="5" class="form-control" cols="300" readonly><%=notification.get("signature")%></textarea></td><td class="col-lg-3 ">签名信息</td></tr></table>
</div>

我的联系方式

  • Q Q:1250052380
  • 邮箱:1250052380@qq.com

提交application/x-www-form-urlencoded类型数据相关推荐

  1. 利用ajax提交form表单数据

    利用thymeleaf引擎创建的html中,使用了adminLTE模板,ajax提交form表单数据,本以为很容易实现,却遇到了很多问题,这里进行总结. 1.get方式提交 通过serialize() ...

  2. Ajax提交form表单数据

    文章目录 前言 一.form表单介绍 1.什么是表单 2.表单form的组成部分 3.表单form的属性 4.表单的同步提交 二.Ajax 提交表单数据 1.监听表单的提交事件 2.阻止表单的默认提交 ...

  3. ajax提交form表单到php,ajax如何提交form表单数据?ajax提交form表单数据的方法介绍...

    对于form表单数据的提交,我们一般都会想到使用ajax提交,那么,ajax如何来提交form表单数据呢?接下来的这篇文章就来给大家来介绍关于ajax提交form表单数据方法,有需要的伙伴可以参考一下 ...

  4. get 与 post的区别?application json 与form表单的区别?

    这里是修真院前端小课堂,每篇分享文从 [背景介绍][知识剖析][常见问题][解决方案][编码实战][扩展思考][更多讨论][参考文献] 八个方面深度解析前端知识/技能,本篇分享的是: [get 与 p ...

  5. 模拟登录,发送amf类型数据

    模拟登录,发送amf类型数据 参考 http://blog.csdn.net/amandag/article/details/5666219 以及 稍微修改了一下AMFPost的类  一.登录 登录过 ...

  6. C#中将结构类型数据存储到二进制文件中方法

    以往在vb6,vc6中都有现成的方法将结构类型数据写入和读取到二进制文件中,但是在c#中却没有现成的方法来实现,因此我查阅了一些资料,借鉴了网上一些同学的做法,自己写了个类似的例子来读写结构类型数据到 ...

  7. php获取post表单数据_PHP如何通过post方法来获取form表单中数据?(代码示例)

    我们在网站开发过程中,通常都会遇到关于php form表单的相关操作.如php获取带有post提交方法的表单数据,这种该如何操作呢?如果大家有看过我[PHP如何通过get方法获得form表单数据?]这 ...

  8. mysql blob 存储乱码_mysql 保存 blob 类型数据 乱码 解决

    本人问题:mysql 保存 blob 类型数据 乱码 解决 未解决,??? 之前 private string  archiveValue;导致 写入的进去之后的中文 都是乱码 改正后 ,即可 pri ...

  9. [YTU]_2631( B1 能存各种类型数据的Store类)

    题目描述 有一种类,海纳百川,可以对任意类型的数据进行存取,造就这个传奇的,就是模板. 下面的程序中,定义一个类模板,但其中有些成份漏掉了,请你将他们补足,使程序能正确运行,得到要求的输出结果. 请提 ...

  10. java中map转为json数据_Java技术-将java中Map类型数据转化为json数据并以Ajax形式返回...

    Java技术-将java中Map类型数据转化为json数据并以Ajax形式返回html 1.自定义工具类(简单易用)-下面是我写的一个简单的工具类前端 package com.test.util; i ...

最新文章

  1. Android 轮播Banner 实现 附代码
  2. bat修改文件内容_批量获取文件名,这几招太高效了!
  3. 再说TCP神奇的40ms
  4. 论面向组合子程序设计方法 之 oracle
  5. MySQL导出表结构相关字段以及把字段由下划线转驼峰命名
  6. C语言面向对象编程(一):封装与继承
  7. C/C 语言printf()
  8. js option keycode
  9. [置顶文章]打豆豆的一些小问题、不小心会忘记的知识点
  10. 关于CocoaPods update/CocoaPods install 慢、没反应、卡住的解决方案(Pods升级步骤)
  11. java实现redis客户端_Java实现Redis客户端
  12. 实时渲染学习(十一)渲染加速算法总结
  13. Bitbake--语法和操作符
  14. 7.Flink实时项目之独立访客开发
  15. android 侧滑栏教程,Android控件开发——DrawerLayout侧滑菜单的实现
  16. Easymock十分钟入门
  17. 核密度估计(Kernel Density Estimation)和累积分布函数 (Cumulative Distribution Function)
  18. 魔法(csdn编程挑战)
  19. 判断三个参数是否能构成一个三角形
  20. 倍速增长!裁员潮下小i机器人逆势扩招

热门文章

  1. 【无标题】2021年烷基化工艺证考试及烷基化工艺操作证考试
  2. Stitcher: Feedback-driven Data Provider for Object Detection 论文学习
  3. 录制计算机网课,电脑怎么录制网络课程?简单专业的录制方法分享
  4. MATLAB - 数字信号包络线的求取
  5. 千呼万唤始出来,犹抱琵琶半遮面——python变量和数据类型
  6. 外卖券-外卖优惠券-原生微信小程序
  7. linux lxde桌面快捷键,LXde 桌面有两下啊
  8. Redis技术贴一览表
  9. 厚朴汇智李艳华:如何培养优秀猎头顾问?
  10. 计算机网络在资源共享信息交换的体会,计算机网络学习心得体会.doc