为了账号安全,请及时绑定邮箱和手机立即绑定

Coinbase Commerce Webhooks API PHP

Coinbase Commerce Webhooks API PHP

PHP
慕妹3242003 2021-05-17 17:23:54
我是PHP开发的新手我正在尝试通过实施一些有趣的真实项目来学习。因此,我尝试构建一个比特币应用程序,让客户可以用加密货币付款。所以我从Coinbase商业API开始我成功实现了收费页面,并且一切正常,直到到达必须处理WEBHOOKS的地步?我正在关注本文档https://github.com/coinbase/coinbase-commerce-php/blob/master/README.md这就是WEBHOOKs的代码`<?phprequire_once __DIR__ . "/vendor/autoload.php";use CoinbaseCommerce\Webhook;/** * To run this example please read README.md file * Past your Webhook Secret Key from Settings/Webhook section * Make sure you don't store your Secret Key in your source code! */$secret = 'SECRET_KEY';$headerName = 'X-Cc-Webhook-Signature';$headers = getallheaders();$signraturHeader = isset($headers[$headerName]) ? $headers[$headerName] : null;$payload = trim(file_get_contents('php://input'));try {    $event = Webhook::buildEvent($payload, $signraturHeader, $secret);    http_response_code(200);    echo sprintf('Successully verified event with id %s and type %s.', $event->id, $event->type);} catch (\Exception $exception) {    http_response_code(400);    echo 'Error occured. ' . $exception->getMessage();}`当我访问we hooks URL时,出现此错误Error occured. Invalid payload provided. No JSON object could be decoded请?我希望有人向我解释此错误
查看完整描述

2 回答

?
三国纷争

TA贡献1804条经验 获得超7个赞

似乎您正在向期望从Web挂钩发出POST(具有有效载荷数据)请求的URL发出GET(无有效载荷数据)请求。

要使用POST,PUT,GET请求测试API,可以使用PostMan之类的工具。
您可以手动构建JSON负载并测试端点。

查看完整回答
反对 回复 2021-05-21
?
慕姐8265434

TA贡献1813条经验 获得超2个赞

试试这个


$headerName = 'x-cc-webhook-signature';


$signraturHeader = isset($headers[$headerName]) ? $headers[$headerName] : null;

代替


$headerName = 'X-Cc-Webhook-Signature';


$signraturHeader = isset($headers[$headerName]) ? $headers[$headerName] : null;


查看完整回答
反对 回复 2021-05-21
  • 2 回答
  • 0 关注
  • 189 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信