支付宝和微信支付的坑

支付宝篇

 1 公钥和私钥要正确,格式要正确,公钥必须是支付宝公钥

 2 我用的是laravel框架,一开始laravel会把支付宝返回参数过滤,导致异步回调的接口取值,取不到返回值,换成 

file_get_contents('php://input'),

3 本人采用内网穿透来试验 natapp.cn ,这种内网,nginx配置如下

if (!-e $request_filename) {
   rewrite  ^(.*)$  /index.php?s=/$1  last;
   break;
    }

结果支付宝返回的多余的参数带着,导致签名不成功

s=

改成配置,成功

 if (-f $request_filename) {
          break;
  }
   if ($request_filename ~* "\.(js|ico|gif|jpe?g|bmp|png|css)$") {
      break;
  }
  if (!-e $request_filename) {
      rewrite . /index.php last;
   }

 4 本人采用github的扩展包,很长时间找不到问题,后来拿支付宝原生的对比,才发现问题

posted @ 2019-04-20 20:49  matengfei  阅读(228)  评论(0编辑  收藏  举报