• 调试错误,请回到请求来源地,重新发起请求


    记录一下,使用支付宝网页支付踩过的坑

    调试错误,请回到请求来源地,重新发起请求

    从支付宝官方下载的demo,配置好公钥发现运行如下错:

    官方代码 .net demo

    项目中引用 AOPSDK.DLL

    首先说明一下,我是使用秘钥证书的版的,所有配置完之后还是报错的。

    参考官方文档 服务端 SDK(老版) - 支付宝开放平台 (alipay.com)

    //设置证书相关参数
    CertParams certParams = new CertParams
    {
        AlipayPublicCertPath = "支付宝公钥证书路径",
        AppCertPath = "商户应用证书路径",
        RootCertPath = "支付宝根证书路径"
    };
    IAopClient client = new DefaultAopClient("https://openapi.alipay.com/gateway.do", APPID, APP_PRIVATE_KEY, "json", "1.0", "RSA2", "utf-8", false, certParams);
    //实例化具体API对应的request类,类名称和接口名称对应,当前调用接口名称如:alipay.open.public.template.message.industry.modify 
    AlipayOpenPublicTemplateMessageIndustryModifyRequest request = new AlipayOpenPublicTemplateMessageIndustryModifyRequest();
    //SDK已经封装掉了公共参数,这里只需要传入业务参数
    //此次只是参数展示,未进行字符串转义,实际情况下请转义
    request.BizContent="{" +
    "    "primary_industry_name":"IT科技/IT软件与服务"," +
    "    "primary_industry_code":"10001/20102"," +
    "    "secondary_industry_code":"10001/20102"," +
    "    "secondary_industry_name":"IT科技/IT软件与服务"" +
    "  }";
    AlipayOpenPublicTemplateMessageIndustryModifyResponse response = client.CertificateExecute(request); 
    //调用成功,则处理业务逻辑
    if(response.isSuccess()){
        //.....
    }

    项目中引用如上,结果代码报错了

     官方的Demo居然报参数类型错误。DefaultAopClient 类怎么会报错呢?于是反编译了一下看看究竟是什么原因。

     这明显参数类型不对呀。

    于是在求助在线阿里技术,阿里工程师一时间也不知道什么情况(这里就不上图了),过了10分钟。给回复说:“您引用AlipaySDKNet.dll 试试”

    引用完之后发现,问题竟然好了,又反编译一下

     这次发现参数是对的。  这个坑,本坑已填。有坑继续补充。。。

     在补个链接RSA2和公钥证书签名验签的区别 (alipay.com)

  • 相关阅读:
    [leetcode]397. Integer Replacement
    [LeetCode]396. Rotate Function
    [leetcode]633. Sum of Square Numbers
    [LeetCode]367. Valid Perfect Square判断完全平方数
    [LeetCode]319. Bulb Switcher灯泡开关
    [LeetCode]313. Super Ugly Number超级丑数,丑数系列看这一道就行了
    [LeetCode]231. Power of Two判断是不是234的幂
    使用导入外部样式文件方式
    使用内部样式
    使用链接外部样式文件方式
  • 原文地址:https://www.cnblogs.com/youmingkuang/p/14036594.html
Copyright © 2020-2023  润新知