PC网站的微信支付开发所遇到问题
2021-09-03 19:58:08

为公司的PC网站应用添加微信支付功能,后台是C#开发,坑还真是不少,所以感觉有必要分享出来让大家少走点弯路。第一个坑就是微信支付官方没有提供C#的样例下载,我是百度到网友发出来的样例包。微信后台一堆的申请认证OK过了。

接下来的坑就是太过相信微信支付的人性化了,结果关键节点的提示让人抓狂。

用微信支付的模式一(样例里默认的),一堆的参数填进去后,运行生成了二维码,但是扫码后错误提示”系统繁忙“,反复查找无果,按网友文章里的说法果断放弃模式一,启用模式二。

微信支付的模式二运行生成二维码,扫码提示”获取用户订单信息超时或商户返回httpcode非200“,经反复查找文章后在微信支付后台添加Native支付回调链接解决。

第三个问题是调用统一下单接口后返回值的问题,解析code_url报错,代码如下(第二行解析报错了,因为返回值result 里没有code_url):

WxPayData result = WxPayApi.UnifiedOrder(data);//调用统一下单接口
string url = result.GetValue("code_url").ToString();//获得统一下单接口返回的二维码链接

加断点看了一下result ,报”return_msg, 签名错误,请检查后再试“,原来我这得用SHA256编码,有网友说他的得用MD5编码,可能是跟生成证书时的密钥设置有关,解决了,过。

 

接下来还是result报错”err_code_des, 参数notify_url无效“,反复检查了微信支付后台添加的地址没错呀,查了无数文章,后来发现是代码里的参数项里也要添加同样的回调地址才行(唉,低级错误),就在样例的GetNotifyUrl()里的return里添加即可。

到此,模式二的二维码生成了,欢快的支付了0.01元完成初步测试。接下来还要做系统接入回调,希望顺利。

本文摘自 :https://www.cnblogs.com/


更多科技新闻 ......