PHP 传入的 webhook 处理
PHP incoming webhook handling
我有一个第 3 方网站,其中包含发送到特定 url 的 webhook。我将其设置为发送到我网站上的空白页面(示例:www.mysite.com/webhook.php)
我在 webhook.php 中设置了一个 var_dump,它应该在 post 中显示任何信息或得到..我是 webhooks 的新手,可能只是不明白它们是如何工作的工作。我假设我可以在我的 php 文件中包含 var_dump($_POST)
来显示到达我网站的 HTTP 请求数组。
发送测试数据后,我在我的站点上看不到任何请求。有什么想法吗?
这是我如何将内容发送到我的应用程序:
$varname = json_decode(file_get_contents('php://input'));
嗯,我的内容是 JSON 编码的,但我认为这没问题:
$varname = file_get_contents('php://input');
我会这样做来测试 webhook。
<?php
$fWrite = fopen("log.txt","a");
$wrote = fwrite($fWrite, var_dump($_POST));
fclose($fWrite);
?>
这将在 log.txt
文件中 return var_dump 数据,因为正如 rickdenhaan 36 分钟前所说,您当前的 webhook.php
return 数据到 webhook不是你的观点。
如果您没有目录 (755)
的权限,您可能需要手动创建 log.txt
我目前正在处理使用 webhook 的付款 API。 Webhook 将数据发送到 X url 然后执行操作并将 return 代码发送到 webhook。所以 webhook.php 是我的订单是否已付款的地方...这是我所做的:
if ($payment->isPaid() == TRUE)
{
/*
* At this point you'd probably want to start the process of delivering the product to the customer.
*/
$con->query("UPDATE orders SET bankno = '$bankno', status = 'paid' WHERE ordertr = '$ids'");
}
elseif ($payment->isOpen() == FALSE)
{
/*
* The payment isn't paid and isn't open anymore. We can assume it was aborted.
*/
$con->query("UPDATE orders SET bankno = '$bankno', status = 'closed' WHERE ordertr = '$ids'");
}
因此,如果订单已付款,则在数据库中标记为已付款,如果未标记为已关闭。这显示了 webhook 的使用。根据 webhook 数据发送的内容执行操作。
我有一个第 3 方网站,其中包含发送到特定 url 的 webhook。我将其设置为发送到我网站上的空白页面(示例:www.mysite.com/webhook.php)
我在 webhook.php 中设置了一个 var_dump,它应该在 post 中显示任何信息或得到..我是 webhooks 的新手,可能只是不明白它们是如何工作的工作。我假设我可以在我的 php 文件中包含 var_dump($_POST)
来显示到达我网站的 HTTP 请求数组。
发送测试数据后,我在我的站点上看不到任何请求。有什么想法吗?
这是我如何将内容发送到我的应用程序:
$varname = json_decode(file_get_contents('php://input'));
嗯,我的内容是 JSON 编码的,但我认为这没问题:
$varname = file_get_contents('php://input');
我会这样做来测试 webhook。
<?php
$fWrite = fopen("log.txt","a");
$wrote = fwrite($fWrite, var_dump($_POST));
fclose($fWrite);
?>
这将在 log.txt
文件中 return var_dump 数据,因为正如 rickdenhaan 36 分钟前所说,您当前的 webhook.php
return 数据到 webhook不是你的观点。
如果您没有目录 (755)
的权限,您可能需要手动创建 log.txt我目前正在处理使用 webhook 的付款 API。 Webhook 将数据发送到 X url 然后执行操作并将 return 代码发送到 webhook。所以 webhook.php 是我的订单是否已付款的地方...这是我所做的:
if ($payment->isPaid() == TRUE)
{
/*
* At this point you'd probably want to start the process of delivering the product to the customer.
*/
$con->query("UPDATE orders SET bankno = '$bankno', status = 'paid' WHERE ordertr = '$ids'");
}
elseif ($payment->isOpen() == FALSE)
{
/*
* The payment isn't paid and isn't open anymore. We can assume it was aborted.
*/
$con->query("UPDATE orders SET bankno = '$bankno', status = 'closed' WHERE ordertr = '$ids'");
}
因此,如果订单已付款,则在数据库中标记为已付款,如果未标记为已关闭。这显示了 webhook 的使用。根据 webhook 数据发送的内容执行操作。