微信支付JS API使用心得

微信的接口真的很坑爹,只返回成功或失败,从来不会告诉你为什么失败。这个微信支付的js接口也是调了一个下午才成功,期间踩了不少坑,在这里总结一下,而且把支付接口封装成了一个js文件,这样以后调用就很方便了。

坑1:公众号里面可以设置测试目录,例如是 www.baidu.com/pay/,这样设置的,那么的你支付的页面的url一定要在这个目录下面,而且不能有二级目录,例如支付的url是www.baidu.com/pay/1的话是可以的,但是www.baidu.com/pay/1/1这样是不可以的,会返回access denied

坑2:支付的链接一定要在该公众号里面打开的,例如点击公众号按钮打开,所以测试的时候可以用公众号把支付链接发送给测试的个人微信号,这样个人微信号打开该链接才能触发微信支付的接口,否则也是返回access denied

下面是调用我封装好的支付接口的代码

<script src="/crowd/js/sha1.js"></script>
<script src="/crowd/js/weixin_pay.js"></script>
<script src="/crowd/js/jQuery.md5.js"></script>
<script type="text/javascript">
    function after_pay(ret){
        alert(ret[0]+ret[1])
    }
    function pay(money){
        ret=weixin_pay(‘{{ip}}‘,money,‘支持老师‘,‘‘,after_pay)

    }
</script>

需要导入三个js文件,一个是sha1加密方法,一个是md5的加密方法,最后一个就是我封装好的支付接口。下载地址:http://download.csdn.net/detail/siding159/7747653

wexin_pay方法需要输入四个参数,用户客户端的ip地址,我的做法是后端获取,然后返回网页的时候带上,支付的金额数量,支付说明,订单号out_trade_no(微信文档那里说这个需要在商户内部是唯一的,就是唯一标识这个订单的编号,这里可以输入为空,这样的话,weixin_pay函数里面会自己生产一个唯一的字符串,然后再ret里面返回)和支付完成后回调的函数after_pay

使用weixin_pay.js需要修改里面的参数为自己公众号的参数,例如appid那些。

微信支付JS API使用心得

时间: 2024-10-29 03:26:28

微信支付JS API使用心得的相关文章

微信公众号支付 js api java版本

说起来.微信支付真是一堆坑. 居然官网都没有java版本的完整代码. 就算是php版本的.还都有错误.且前后各种版本.各种文档一大堆....不停的误导开发人员. 花了一天半时间.总算实现了微信公众号支付.和pc端的微信扫码支付.其他不说了.直接给思路 本人做的是微信V3版本的微信支付.微信的官方文档中.提供的demo 只有一些工具类.这些类还是很有作用的. https://mp.weixin.qq.com/paymch/readtemplate?t=mp/business/course3_tmp

微信支付开发中一些心得

1.微信支付的付款单位是分,最后的金额要将元转成分,这里需要注意的是java如果直接通过double或者float计算的出来的数字有可能是带有小数点的. 例如:double d = 3.85100:结果是385.0 微信支付金额不允许带有小数点,这样的参数提交到微信支付会提示:参数传递错误*. 2.带有微信支付的android app运行在手机之后,有可能获取access token,preparedId之后没有任何相应.这里有可能是因为app没有signature的原因.在微信开放平台中有一个

一个不错的微信应用JS API库

1.API能实现什么? 1.分享到微信朋友圈 2.分享给微信好友 3.分享到腾讯微博 4.新的分享接口,包含朋友圈.好友.微博的分享(for iOS) 5.隐藏/显示右上角的菜单入口 6.隐藏/显示底部浏览器工具栏 7.获取当前的网络状态 8.调起微信客户端的图片播放组件 9.关闭公众平台Web页面 你可以用微信的“扫一扫”来打开下面这个二维码体验一把: 2.如何使用? 使用起来比较简单,具体可参考demo.html中的实现 1).分享 WeixinApi.ready(function(Api)

微信支付.NET版开发总结(JS API),好多坑,适当精简

前2天,做一个手机网页的微信支付的项目,费了好些周折,记录一下.接下来,按照开发步骤,细数一下,我遇到的那些坑. [坑1]官方邮件中下载的demo只有PHP版本,其他版本没有给链接.可能让人误以为只有PHP版本,事实上,各种版本都有. 拿到了腾讯发给客户的,微信支付商户资料,邮件中提示:证书的详细使用方案,请查看微信支付开发接口文档.根据邮件微信支付开发接口文档的链接,定向到一个新的邮件附件,里面的内容: 3. 使用公众号发起支付请求 使用JS API在微信的网页中发起支付请求,详细方法见文档中

微信支付.NET版开发总结(JS API),好多坑,适当精简。

前2天,做一个手机网页的微信支付的项目,费了好些周折,记录一下.接下来,按照开发步骤,细数一下,我遇到的那些坑. [坑1]官方邮件中下载的demo只有PHP版本,其他版本没有给链接.可能让人误以为只有PHP版本,事实上,各种版本都有. 拿到了腾讯发给客户的,微信支付商户资料,邮件中提示:证书的详细使用方案,请查看微信支付开发接口文档.根据邮件微信支付开发接口文档的链接,定向到一个新的邮件附件,里面的内容: 3. 使用公众号发起支付请求 使用JS API在微信的网页中发起支付请求,详细方法见文档中

微信支付遇到的坑

最近搞了个公众号,由于是新手,微信支付那一块其中就遇到了不少的坑,为此商家因为我的失误就丢了差不多1000块..下面总结一下遇到的坑 图为微信支付的官方文档 图为实际文档的代码 如果你用过微信支付的sdk,就会发现支付的设置是在jsapi.php这个文件下面,其中上面的那段代码是微信支付js api的调用,如果有支付行为就会调用function里面的函数,如果是返回的信息是"get_brand_wcpay_request:ok",就会执行if里面你的写的代码,按道理来说if里面一般放置

微信支付开发若干问题总结,API搞死人(谢谢ζ???????http://www.thinkphp.cn/code/1620.html)

近日,我研究了微信支付的API,我是用简化版的API,首先简述一下流程: 1.通过APP_ID,APP_SCRECT获取网页授权码code, 2.利用code获取用户openid/userinfo 3.第一次签名获取微信接口参数:双管齐下,APP_ID.APP_SCRECT->access_token->jsapi_ticket->签名->获取参数. 4.第二次签名获取预支付prepay_id:2步骤取得openid.APP_ID.APP_SCRECT.商户MCHID--->

C#开发微信门户及应用(32)--微信支付接入和API封装使用

在微信的应用上,微信支付是一个比较有用的部分,但也是比较复杂的技术要点,在微商大行其道的年代,自己的商店没有增加微信支付好像也说不过去,微信支付旨在为广大微信用户及商户提供更优质的支付服务,微信的支付和安全系统由腾讯财付通提供支持.本文主要介绍如何在微信公众号上实现微信支付的接入.微信支付API的封装,以及API的调用,实现我们一些常见的业务调用. 1.开通微信支付并配置 微信支付是需要微信公众号的认证基础,也就是只对认证的公众号开放,微信认证需要签署相关的资料,并且进行对账认证,一般会有电话联

js调微信支付、支付宝支付

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title></head><body><div id="btn">点击click</div> <script>//微信支付js交互 document.getElemen