• 微信支付退款证书服务器配置


    1.需要去pay.weixin.com 下载证书

    2.解压 安装apiclient_cert.p12

    3.选择本地计算机

    4.下一步下一步  密码默认为商户号

     

    5.存储位置选个人

     

    6.打开MMC.exe  或者运行中输入MMC      点击  文件→添加或删除管理单元 →证书   选择计算机账户 下一步 完成

    7.点击 个人 →证书 →  选择微信支付证书  右键 管理私钥  添加IIS账户权限

    7.在请求API是添加证书文件  

    var certname="您公司的名字";

    var certnotbefore="证书的有效期";//腾讯比较变态  有二维码支付证书 app支付证书  公众号支付证书  证书的名字且都一样 为了能够公用一个退款接口且成功调用退款   我在请求时传入了证书名字 和 证书有效期 来区分是哪个支付的退款

    HttpWebResponse webreponse;

    ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
    //系统必须已经导入cert指向的证书
    string url = "https://api.mch.weixin.qq.com/secapi/pay/refund";
    X509Store store = new X509Store("My", StoreLocation.LocalMachine);
    store.Open(OpenFlags.ReadOnly | OpenFlags.OpenExistingOnly);
    store.Open(OpenFlags.ReadOnly | OpenFlags.OpenExistingOnly);
    X509Certificate2 cert = null;
    if (certnotbefore != null)
    foreach (X509Certificate2 certinfo in store.Certificates.Find(X509FindType.FindBySubjectName, certname, false))
    {
    if (certinfo.NotAfter == certnotbefore)
    cert = certinfo;
    }
    else
    cert = store.Certificates.Find(X509FindType.FindBySubjectName, certname, false)[0];
    HttpWebRequest webrequest = (HttpWebRequest)WebRequest.Create(url);
    webrequest.ContentType = "application/x-www-form-urlencoded";
    webrequest.ClientCertificates.Add(cert);
    webrequest.Method = "post";
    webrequest.KeepAlive = true;

     8.赶紧测试一下吧 

    发现退款可以用了  

  • 相关阅读:
    Netty之ProtoBuf(六)
    Netty对WebSocket的支持(五)
    Netty之心跳检测技术(四)
    Netty之多用户的聊天室(三)
    Docker Compose 笔记
    vue.js学习笔记
    powerdesigner 生成C#code 实体 模板设备
    .net 接收post 的参数 加载xml
    powerdesigner 生成实体代码 附加生成xml
    PostgreSql 获取所有的表、视图、字段、 主键
  • 原文地址:https://www.cnblogs.com/xiaoxiangpaou/p/9799527.html
Copyright © 2020-2023  润新知