EasyWeChat 6.* 调用API 请求微信支付订单查询接口 报错签名错误

当前使用的 Laravel 版本

laravel9

PHP 版本:

8.0

相关软件版本

EasyWeChat 6.*

问题描述?

EasyWeChat 6.* 调用 API 请求微信公众号支付JSAPI时正常,但是调用微信支付查询订单状态 V3 API 时签名错误,有没有大铁门遇到过 怎么解决的 ?

配置

        $config = [
            'mch_id' =>16172***,
            // 商户证书
            'private_key' =>__DIR__ .'/certs/apiclient_key.pem',
            'certificate' =>__DIR__ .'/certs/apiclient_cert.pem',
             // v3 API 秘钥
            'secret_key' => 'Alim**************************',
            // v2 API 秘钥
            'v2_secret_key' => 'Alim**************************',

            // 平台证书:微信支付 APIv3 平台证书,需要使用工具下载
            // 下载工具:https://github.com/wechatpay-apiv3/CertificateDownloader
            'platform_certs' => [
                // env('WECHAT_PAYMENT_KEY_PATH')
                // 'certs/apiclient_cert.pem'
                // '/path/to/wechatpay/cert.pem',
            ],
        ];

调用API代码

        $transactiosnId = '217752501201407033233368018';
        $response = $app->getClient()->get("v3/pay/transactions/id/{$transactionId}", [
            'query'=>[
                'mchid' =>  $app->getMerchant()->getMerchantId()
            ]
        ]);

调用时报错

《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
最佳答案

是个 bug, 已经修复啦,更新到最新版即可。

2年前 评论
Bellaciao (楼主) 2年前
讨论数量: 6

appid就这样暴露没关系吗

2年前 评论
Bellaciao (楼主) 2年前

我也碰到这个问题了,post 方式没问题,get 方式就不行,后来用原生解决了这块, 6 版本的文档看起来让人有点蒙,用的人少,所以问题也搜不到

2年前 评论
Bellaciao (楼主) 2年前

是个 bug, 已经修复啦,更新到最新版即可。

2年前 评论
Bellaciao (楼主) 2年前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!