yujiak

1822 经验值

$rsa = \Pingpp\Pingpp::setPrivateKeyPath(public_path() . '/rsa_private_key.pem');
        dd($rsa);

我这里打印出来结果是 null ,看起来不对吧?目录下确实是有这个文件的

这里的证书用的是ping++后台提供的ping++公钥

public function notify(){
        $rawData = file_get_contents('php://input');
        $result = $this->verifyPing($rawData);
}
protected function verifyPing($rawData){
       $headers = \Pingpp\Util\Util::getRequestHeaders();
//       $headers = Util::getRequestHeaders();
       $signature = isset($headers['X-Pingplusplus-Signature']) ?: null;
       $publicKeyContents = file_get_contents(public_path(). '/rsa_public_key.pem');
       return openssl_verify($rawData,base64_decode($signature),$publicKeyContents,'sha256');
   }

这大小写看起来应该是没毛病,laravel5.2 + nginx/1.10.2 +php5.6.27

$signature = isset($headers['X-Pingplusplus-Signature']) ? $headers['X-Pingplusplus-Signature'] : NULL;

是这样的...

晕,直接复制的一发出去就变成这样了...

现在这个问题解决了,在本地也能支付,但是上传到服务器就提示 “错误代码 invalid-signature 错误原因: 无效签名”。
protected function verifyPing($rawData){

   $headers = \Pingpp\Util\Util::getRequestHeaders();
   $signature = isset($headers['X-Pingplusplus-Signature']) ? $headers['X-Pingplusplus-Signature'] : NULL;
   $publicKeyContents = file_get_contents(public_path(). '/rsa_public_key.pem');//注意这里的文件路劲相对应
   return openssl_verify($rawData,base64_decode($signature),$publicKeyContents,'SHA256');

}
执行这个函数的时候返回了 0 ,问题是不是在这呢?

即时到账,pc端和wap的都申请了

支付宝支付,设置disable_pay_channels禁用支付渠道的时候,禁用了信用卡支付,但是提交付款的时候还是可以选择信用卡付款!这个怎么解?支付宝接口已升级到2.0了的。

撤回我刚回复的那条信息,原来放视频两端了^-^

视频播放没有 “下一节” 这个按钮了,感觉不太方便