微信红包的坑~参数详解和密钥的坑
来源:互联网 发布:通过网络被骗的案例 编辑:程序博客网 时间:2024/06/16 05:53
对于之前微信支付的文章中,我们谈过了它的很多"坑",而在进行红包开发时,这种坑依然不少,主要是微信为我们提供的各种账号和密钥太多,把开发人员都搞晕了,下面大叔总结一下:
一 微信支付的密钥
统一使用公众号密钥:Key
二 微信红包的密钥
统一使用商户账号的密钥:AppSecret
三 红包进行签名要注意的
使用场景可以排除,如果大于200元时才需要这个参数,如果你随便写一个场景,而商户平台没有开通,反而会报错
四 向微信发送红包请求时要带上证书
需要现时读取apiclient_cert.p12的签名内容,因为https是双向检验的,在.net平台,程序要加载p12这个证书,并发到微信;在操作系统上,还要安装这个证书,两者缺一不可.
public static string Post(string url, string param) { try { string cert = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "apiclient_cert.p12"); string password = WxPayConfig.MCHID; ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(CheckValidationResult); X509Certificate cer = new X509Certificate(cert, password); HttpWebRequest webrequest = (HttpWebRequest)HttpWebRequest.Create(url); webrequest.ClientCertificates.Add(cer); webrequest.Method = "post"; byte[] someBytes = System.Text.Encoding.UTF8.GetBytes(param); webrequest.ContentLength = someBytes.Length; Stream reqStream = webrequest.GetRequestStream(); reqStream.Write(someBytes, 0, someBytes.Length); reqStream.Close(); //必须要关闭 请求 HttpWebResponse webreponse = (HttpWebResponse)webrequest.GetResponse(); Stream stream = webreponse.GetResponseStream(); string resp = string.Empty; using (StreamReader reader = new StreamReader(stream)) { resp = reader.ReadToEnd(); } return resp; } catch (Exception e) { Lind.DDD.Logger.LoggerFactory.Instance.Logger_Info(string.Format("微信红包接口日志:错误代码:{0} {1}", e.Message, e.StackTrace)); throw; }
五 签名时的key一定要用AppSecret,下面代码是错误的
有了上面几个经验之后,我们的红包模块才可以测试成功!
真的挺不容易的,尤其是.net平台,还要安装个人证书,为证书添加用户权限等.
0 0
- 微信红包的坑~参数详解和密钥的坑
- 微信红包的坑~参数详解和密钥的坑
- 微信红包的坑~参数详解和密钥的坑
- 微信红包的坑~参数详解和密钥的坑
- 微信红包的算法
- 参考微信红包的抢红包算法
- 微信红包的创意不错
- android微信的抢红包插件
- 微信红包照片的揭秘
- 微信红包的架构设计简介
- 微信红包的算法实现
- 微信红包的架构设计简介
- JAVA版的微信红包算法
- 微信红包接龙的数学分析
- 微信红包的随机算法
- 微信红包的算法实现探讨
- 微信红包的架构设计简介
- 浅谈微信红包的算法
- 使用JavaMailSenderImpl实现Email发送
- 前后端对请求参数排序
- vs为QT程序添加icon图标
- spring cloud-将spring boot服务注册到Eureka Server上
- 自定义第三方包
- 微信红包的坑~参数详解和密钥的坑
- vcf通讯录格式解析
- 自适应屏幕的后台系统?
- 2016年的总结
- Ajax+SpingMVC总结
- WEB标准的概念及组成
- DDos/DoS工具集(持续更新)
- netty基础概念
- hbase常见的java类与数据模型(备忘)