php,laravel继承微信和支付宝支付sdk遇到的问题

2019-09-22 07:54:43

当然,继承微信和支付宝已经不是一次两次了,最早一次也时四年前的事了。

从来都没觉得简单过,然而这次依然没有摆脱这个噩梦。

因为之前都是继承在java后台,这次改到了php,laravel后台。


1.微信继承支付遇到的坑,直接使用了以前使用的easywechat,overture的公众号同意调用支付的接口。

一切都恨顺利,就时android端调用支付的时,调不起来支付,状态栏一闪而过。并没有什么报错,恶心之至。  一天两夜的各种调试。哎

原来公众号的时候统一订单的时候时这样的


$config = $payapp->jssdk->webConfig($weresult["prepay_id"]);

做app支付的时候要改成这个

$config = $payapp->jssdk->appConfig($weresult["prepay_id"]);

好了,成功了。

一是怪我没注意,二是,作者为甚么要这样区分呢,前面的配置我已经填写要支付用途了。

哎,都是统一接口了,还有不统一的地方。哎

欢快的进行支付宝支付。


对接支付宝支付接口,难度一点也不亚于微信支付啊。况且签约还是失败状态。

  1. 首先出现4000错误码 ,这个网上一搜就出来了,没有安装支付宝客户端呗。

    所以这个也得注意一下啊,没有安装客户端的要提醒一下。

  2.不知的啥问题哈。

    注意事项,密钥的申请,和要用那些密钥。对了,用支付宝提供的工具进行生成密钥和自己的公钥,要看清楚上方有java代码传用,java代码和其他代码的还不一样。

我觉得如果多个app不介意的化,可以用这一套哦。


    1.用支付宝工具生成密钥。

    2.长的那个是 private_key,短的那个是my_public_key

     3.上传my_public_key,支付宝自动申城ali_public_key


让后所有的配置完了,我们只用private_key和ali_public_key就好了。


一阵重启,测试后,一天啊,又是一天。

最后一个问题终于解决了。

和easywechat一样的问题。

我用的laravel-pay别人写好的,其实也支持微信支付。但我没有用他的微信支付。

同样的问题。

$alipay = \Yansongda\LaravelPay\Facades\Pay::alipay()->web($order);
$alipay = \Yansongda\LaravelPay\Facades\Pay::alipay()->app($order);

哎,没想到,相同的石头,换了个地方,竟然绊倒我两次。

  • 2018-12-05 15:11:18

    为什么 Objective-C非常难

    作为一个Objective-C的coder,我总能听到一部 分人在这门语言上抱怨有很多问题。他们总在想快速学习这门语言来写一个App出来,但他们也总是联想到Objective-C看上去实在太难了或者在想这 些语法符号都是神马玩意?不错,他们问得非常好,所以本人也解释一下为什么很多程序员相比较学习Ruby或者Java很容易,但在决定开发iOS或者OS X应用时会那么犹豫。

  • 2018-12-05 15:22:23

    十分钟让你明白Objective-C的语法(和Java、C++的对比)

    很多想开发iOS,或者正在开发iOS的程序员以前都做过Java或者C++,当第一次看到Objective-C的代码时都会头疼,Objective-C的代码在语法上和Java, C++有着很大的区别,有的同学会感觉像是看天书一样。不过,语言都是相通的,有很多共性。下面列出Objective-C语言的语法和Java,C++的对比,这样你就会很容易Objective-C的语法是怎么回事了。

  • 2018-12-05 15:33:33

    一篇文章看懂有关iOS开发语言的一切!

    OS开发语言有哪些?OS开发语言主要包括什么?iOS开发语言具体怎么学习?今天重点介绍一下: iOS开发语言主要包括:C语言基础、Obiective-C编程、Swift、UIKit框架详解这几大块,在这里项目阶段就不详细的介绍了。 C语言基础 C语言是开发语言的基础,是最常用的一门程序设计语言,最常用于编写计算机程序。

  • 2018-12-06 10:03:36

    定时杀掉processlist sleep状态的线程

    由于程序设计的Bug,导致目前这个项目使用的数据库中有很多Sleep状态的线程。找了很多解决办法,还没发现最终有效的解决方案。只能临时使用如下方法: 编写shell文件,如killSleepProcess.sh

  • 2018-12-07 08:26:37

    mysql线程池和连接池的区别

    可能有的DBA会把线程池和连接池混淆,其实两者是有很大区别的,连接池一般在客户端设置,而线程池是在DB服务器上配置;另外连接池可以取到避免了连接频繁创建和销毁,但是无法取到控制MySQL活动线程数的目标,在高并发场景下,无法取到保护DB的作用。比较好的方式是将连接池和线程池结合起来使用。 作者:飞鸿无痕 链接:https://www.jianshu.com/p/88e606eca2a5 來源:简书 简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

  • 2018-12-07 17:47:24

    linux中wc命令用法

    Linux系统中的wc(Word Count)命令的功能为统计指定文件中的字节数、字数、行数,并将统计结果显示输出。