官方API:打开连接

特别注意----JSAPI只能在微信环境下 测试!2017-04-19

配置:微信公众号中 添加微信支付配置--请认真填写配置并获取下面对应的数据才能正常运行。

  =======================【基本信息设置】====================/* 微信公众号信息配置* APPID:绑定支付的APPID(必须配置)* MCHID:商户号(必须配置)* KEY:商户支付密钥,参考开户邮件设置(必须配置)* APPSECRET:公众帐号secert(仅JSAPI支付的时候需要配置)*/public const string APPID = AuthConnect.WeChat_AppId;public const string MCHID = "0000000";public const string KEY = AuthConnect.WeChat_AppPayKey;public const string APPSECRET = AuthConnect.WeChat_AppKey;

1、首先引用API基类:OrderDetail.cs、TenpayUtil.cs、QueryOrder.cs、UnifiedOrder.cs---可以到我的github上获取 下载

2、C# 服务端代码---获取JSAPI需要的各个参数,并返回给前端

UnifiedOrder order = new UnifiedOrder();order.appid = AppId;order.mch_id = partnerId;order.nonce_str = TenpayUtil.getNoncestr();order.body = body;order.out_trade_no = orderNumber;order.total_fee = Price;order.spbill_create_ip = Page.Request.UserHostAddress;order.notify_url = "Notify.aspx";order.trade_type = "JSAPI";if (ViewState["OpenID"] != null){order.openid = ViewState["OpenID"].ToString();  //JSAPI必须传入openid
        }TenpayUtil tu = new TenpayUtil();PrepayId = tu.getPrepay_id(order, key);string package = "prepay_id=" + PrepayId;NonceStr = order.nonce_str;TimeStamp = TenpayUtil.getTimestamp();SortedDictionary<string, string> sParams = new SortedDictionary<string, string>();sParams.Add("appId", AppId);sParams.Add("nonceStr", NonceStr);sParams.Add("package", package);sParams.Add("signType", "MD5");sParams.Add("timeStamp", TimeStamp);Sign = tu.getsign(sParams, key);Json = "{\"code\":\"1\",\"data\":{\"appId\":\"" + AppId + "\",\"nonceStr\":\"" + NonceStr + "\",\"package\":\"" + package + "\",\"timeStamp\":\"" + TimeStamp + "\",\"signType\":\"MD5\",\"paySign\":\"" + Sign + "\"}}";

3、前端JS---:接收后台传过来的参数,如果正确无误就可以在微信中调起支付功能。

$.post("/Pay/PayApi.aspx", ret, function (result) {var result = JSON.parse(result); //后台获取到的参数if (result.code == 1) {WeixinJSBridge.invoke('getBrandWCPayRequest', result.data,function (res) {// 使用以上方式判断前端返回,微信团队郑重提示:res.err_msg将在用户支付成功后返回    ok,但并不保证它绝对可靠。switch (res.errMsg) {case "get_brand_wcpay_request:ok":alert("支付成功");break;case "get_brand_wcpay_request:cancel":alert("支付取消");break;default:alert("支付失败");break;}});}}

大功告成!  祝君好运~

转载于:https://www.cnblogs.com/longm/p/6732759.html

WeChat-JSAPI支付相关推荐

  1. php微信jsapi支付小结,ThinkPHP接入微信支付 - JSAPI支付

    一.支付准备 二.获取用户openid 首先,到微信公众平台后台 - 设置 - 网页授权域名(别忘了添加开发者) // 在头部引入WechatPubService.php文件,见附录一 use app ...

  2. 微信公众号开发笔记(三):微信JSAPI支付功能开发

    很久之前做了微信支付,其中也趟过很多坑,现在有时间就做个自我梳理吧算是. 公众号开发的基本配置(不明白的可以参考https://blog.csdn.net/TOP__ONE/article/detai ...

  3. 微信JSApi支付~订单号和微信交易号

    返回目录 谈谈transactionId和out_trade_no 前一篇微信JSApi支付~坑和如何填坑文章反映不错,所以又写了个后篇,呵呵. 每个第三方在线支付系统中都会有至少两类订单号,其一为支 ...

  4. 微信Jsapi支付实战踩坑

    准备 需求 需求就是最简单的对接微信网页支付接口 方案心路历程 一开始是对接的H5,后面才发现H5支付是一定要在微信环境外才可以调用并跳转支付的 这是H5支付对接实操过程 下面称为P1 上文H5支付对 ...

  5. php接入微信JSAPI支付,微信内拉起支付,基于thinkPHP框架 WeChatDeveloper支付类包

    文章:php接入微信支付,扫码支付和H5支付(非微信浏览器),基于thinkPHP框架 WeChatDeveloper支付类包 踩坑指南 文章:php快速接入支付宝即时支付,PC网站支付和手机网站支付 ...

  6. 微信小程序微信支付《JSAPI支付》APIV3详细教程

    文章目录 前提 整体介绍 我的maven依赖 1.整体流程 2.openid 的获取 3.统一下单Controller(预支付订单) 4.配置类和配置文件 5.工具类 6.前端接收到必要的参数,进行调 ...

  7. Java接入微信native、jsapi支付

    Java接入微信native.jsapi支付 一.说明 本文示例使用的微信支付版本为V2版本,是旧版本,旧版本与新版本的接口不一,并不通用. 微信官方接口文档地址:https://pay.weixin ...

  8. jsapi支付签名_PHP实现微信支付(jsapi支付)流程步骤详解

    最近接触到一个项目,涉及到微信支付,搞微信开发这么久以来,还没搞过支付,之前也就搞过公众号发红包,感谢前辈们的探索,我看了他们的博文,让我少走了很多弯路. 前期准备: 1.微信认证服务号,并且开通了微 ...

  9. jsapi支付签名_微信支付小程序支付全流程

    点击蓝色字关注我们! 一个努力中的公众号 长的好看的人都关注了 本文给大家讲解微信小程序支付全流程,以及相关功能源代码,项目不开放,带来不便尽请谅解.小程序支付主要包含如下几步骤,1.预下单-调用微信 ...

  10. php如何接入微信支付接口,PHP实现微信支付(jsapi支付)流程的方法

    最近接触到一个项目,涉及到微信支付,搞微信开发这么久以来,还没搞过支付,之前也就搞过公众号发红包,感谢前辈们的探索,我看了他们的博文,让我少走了很多弯路. 前期准备: 1.微信认证服务号,并且开通了微 ...

最新文章

  1. R绘制排序的条形图(Ordered Bar Chart)
  2. 超全十大经典排序算法及其分析
  3. modifying的博客
  4. M面试题-HTTPS和HTTP的区别
  5. 使用Xunit来进行单元测试
  6. (免费领)Java大厂面试题:如何实现对象克隆?
  7. 计算机病毒与恶意软件
  8. awvs无法启动问题
  9. libpng库的移植与使用
  10. AI上推荐 之 隐语义模型(LFM)和矩阵分解(MF)
  11. 接触式光电位移传感器的原理是
  12. Eclipse3.5中安装maven插件出现“ the -vm option in eclipse.ini is pointing to a JDK”解决
  13. 苹果手机Charles设置未受信任的软件安装
  14. 第一次作业(个人作业):阅读教材,提五个问题
  15. 收藏 | 产品经理不可不知的 7 种技术思维
  16. 《Arduino直流电机控制教程》
  17. 计算机专业职业理想作文400字,理想的职业400字作文
  18. QT多线程同步之QWaitcondition
  19. 重点知识学习(8.2)--[JMM(Java内存模型),并发编程的可见性\原子性\有序性,volatile 关键字,保持原子性,CAS思想]
  20. 微软校招面试题3-15

热门文章

  1. 百度echart resize的坑
  2. DTcms-【需求】-需求分析
  3. ubuntu20.04【一键脚本安装wps并配置字体】
  4. 深度卷积神经网络(CNN)特征层的可视化
  5. 图解Java类加载机制
  6. 配置ext邮箱服务器,Extmail实现邮件服务器
  7. 当棋牌遇到Web3,Immortal Games能让国际象棋流行起来么
  8. 群晖218J搭建VLMCSD
  9. Java代码实现24点计算
  10. 【ISO9126】软件质量模型的介绍(软件质量管理的六大特征和二十七个子特征)