• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >微信公众号 > .NET微信公众号开发(5.0微信支付)实例详解

.NET微信公众号开发(5.0微信支付)实例详解

作者:匿名 字体:[增加 减小] 来源:互联网

匿名通过本文主要向大家介绍了.NET,微信公众号,微信支付等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

一.前言

在开始做这个功能之前,我们要做的第一件事情就是思考,如何做这个微信支付,从哪里开始,从哪里入手,官方的sdk说明什么的,有没有什么官方的demo,还有就是老板给我的一些资料齐全不,那些要申请的接 口什么的都有没有。

经过自己的一些探索,在老板的催促下终于硬着头皮做完了这个,很坑很坑的微信支付,在此做一些总结,希望对你们有所帮助,本人能力有限,如果有什么说的不好,希望大家多多包涵。

二.开发前准备。

1.0微信支付官方开发者文档

2.0官方demo下载 我们用c#所以选择.net版本 不过这个官方的demo根本跑步起来

3.0官方demo运行起来解决方案

4.0微信支付官方.net版之坑你没商量

5.0开发前的微信公众平台的一些配置,请务必认真检查配置.

三.编码

做好了这些准备工作之后,我们知道微信支付有两种,1.原生态的,2.jsapi直接调用的,我项目中用到的是第二种

经过自己的一些业务逻辑处理,来到了我们的订单详情页面,现在需要去点击我们的支付按钮去支付,支付页面pay.aspx代码如下,

前台页面:

<script type="text/javascript">               //调用微信JS api 支付               function jsApiCall()
               {
                   WeixinJSBridge.invoke(                   'getBrandWCPayRequest',                   <%=wxJsApiParam%>,//josn串                    function (res)
                    {                      if (res.err_msg == "get_brand_wcpay_request:ok")
                       {                           var OrderId=$("#OrderId").val();                           var orderProductName=$("#orderProductName").val();                           var orderMoneySum=$("#orderMoneySum").val();
                            window.location.href="http://www.baidu.aspx?OrderId="+OrderId+"&orderMoneySum="+orderMoneySum+"&orderProductName="+orderProductName;//支付成功后的跳转页面

                        }else
                        {
                          WeixinJSBridge.call('closeWindow');
                        }
                         
                     }
                    );
               }

               function callpay()
               {                   if (typeof WeixinJSBridge == "undefined")
                   {                       if (document.addEventListener)
                       {
                           document.addEventListener('WeixinJSBridgeReady', jsApiCall, false);
                       }                       else if (document.attachEvent)
                       {
                           document.attachEvent('WeixinJSBridgeReady', jsApiCall);
                           document.attachEvent('onWeixinJSBridgeReady', jsApiCall);
                       }
                   }                   else
                   {
                       jsApiCall();
                   }
               }               
           </script>


<body>
    <p>
       
       <br />
       <br />
       <br />
       <input  type="hidden" id="OrderId" name="OrderId" value="<%=OrderId %>"/>
       <input  type="hidden" id="orderMoneySum" name="orderMoneySum" value="<%=orderMoneySum %>"/>
       <input  type="hidden" id="orderProductName" name="orderProductName" value="<%=orderProductName %>"/>
       <span class="fLeft" style="font-size:20px;color:Purple">&nbsp;&nbsp;您确认付款<label style="font-size:25px;color:Red"><%=Money%></label>元...</span>
      <p><button type="button" class="btn-pay" title="确认支付" onclick="callpay()">立即支付</button></p>
    </p>
</body>
</html>

需要注意的是:

微信JS API只能在微信内置浏览器中使用,其他浏览器调用无效。微信提供getBrandWCPayRequest接口供商户前端网页调用,调用之前微信会鉴定商户支付权限,若商户具有调起支付的权限,则将开始支付流程。 这里主要介绍支付前的接口调用规则,支付状态消息通知机制请参加下文。接口需要注意:所有传入参数都是字符串类型!

getBrandWCPayRequest参数如表6-5所示。

参数

名称

必填

格式

说明

appId

公众号id

是

字符串类型

商户注册具有支付权限的公众号成功后即可获得;

timeStamp

时间戳

是

字符串类型,32个字节以下

商户生成,从1970年1月1日00:00:00至今的秒数,即当前的时间,且最终需要转换为字符串形式;

nonceStr

随机字符串

是

字符串类型,32个字节以下

商户生成的随机字符串;

package

订单详情扩展字符串

是

字符串类型,4096个字节以下

商户将订单信息组成该字符串,具体组成方案参见接口使用说明中package组包帮劣;由商户按照规范拼接后传入;

signType

签名方式

是

字符串类型,参数取值"SHA1"

按照文档中所示填入,目前仅支持SHA1;

paySign

签名

是

字符串类型

商户将接口列表中的参数按照指定方式迚行签名,签名方式使用signType中标示的签名方式,具体签名方案参见接口使用说明中签名帮劣;由商户按照规范签名后传入;

表6-5 getBrandWCPayRequest参数

getBrandWCPayRequest返回值如表6-6所示。


返回值

说明

err_msg

get_brand_wcpay_request

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 微信扫码支付的Asp.Net MVC开发
  • Smobiler仿微信朋友圈的消息代码实例
  • .NET微信公众号开发(5.0微信支付)实例详解
  • 用Asp.net MVC实现微信分享功能的过程详解
  • ASP.NET Core集成微信登录的实例图解
  • ASP.NET MVC5+EF6+EasyUI微信后台管理系统实例解析
  • ASP.NET实现微信抢红包代码实例
  • 微信公众号查看关注者接口的.NET实例教程
  • 微信公众号中用户分组管理.NET实例详解
  • 用ASP.NET实现微信JS-SDK支付的实例详解

相关文章

  • 微信公众平台开发:通用接口说明
  • 有关官方教程的文章推荐10篇
  • 自定义微信扫码登录样式的实现方法
  • 微信小程序 for 循环详解
  • 微信公众号开发之微信JSSDK
  • 详解微信支付开发之刷卡支付实例
  • Python之XML解析详解
  • 微信开发之公交换乘功能代码详解
  • 微信开放平台开发——网页微信扫码登录(OAuth2.0)
  • 关于网页授权获取的实例用法汇总

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 微信企业号开发:开启回调模式/Python判断信息-回复指定内容示例代码
    • 详解iOS微信支付开发案例代码
    • 微信小程序的wx.request与Promise的结合使用
    • .NET开发微信公众平台之地理位置实例详解
    • 升级 selenium 3.3.0 后报错解决办法
    • 微信开发接收图片消息的接口和参数
    • Android高仿微信支付密码输入控件实例代码
    • C# 微信公众号开发--准备工作
    • 微信公众平台开发:Web代理功能
    • 微信小程序开发之手势解锁代码实例

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有