如何创建 Webhook?
How do I create a webhook?
所以我正在创建一个 click2call 应用程序,使用 Tropo 和 Nexmo,此时,我需要帮助设置 webhook。
它们都提供了一个指向 webhook 的位置,但现在,我不明白该在其中包含什么。是 php 文件吗?还是 json?
我已经尝试创建一个 php 并具有以下内容:
<?php
header('Content-Type: application/json');
ob_start();
$json = file_get_contents('php://input');
$request = json_decode($json, true);
$action = $request["result"]["action"];
$parameters = $request["result"]["parameters"];
$output["contextOut"] = array(array("name" => "$next-context", "parameters" =>
array("param1" => $param1value, "param2" => $param2value)));
$output["speech"] = $outputtext;
$output["displayText"] = $outputtext;
$output["source"] = "whatever.php";
ob_end_clean();
echo json_encode($output);
?>
我以后如何从我的 webhook 检索信息并将其存储在数据库中?我看过一些代码,但我不知道在哪里包含它......
是在我的 api 中,在我的 webhook 指向的 php 文件中吗?
提前谢谢你。
Webhook url 是您服务器上的一个地方,当发生某些事情并且您需要了解时,上述提供商会不时发送数据,例如,您可能每次收到短信时都会收到请求已发送,或者每次短信发送失败时,您可以根据该信息采取进一步的行动,例如标记用户 phone 号码不再有效的事实。
假设您的 webhook url 类似于 https://www.yoursite.com/webhooks.php
,这意味着在您的 webhooks.php
文件中您必须放置一些 PHP 代码来读取传入的请求和将使用它包含的信息做一些事情。
所以我想出了一个非常简单的方法。只需使用以下代码将您的 webhook 指向 php:
<?php
// Original Answer
header('Content-Type: application/json');
$request = file_get_contents('php://input');
$req_dump = print_r( $request, true );
$fp = file_put_contents( 'request.log', $req_dump );
// Updated Answer
if($json = json_decode(file_get_contents("php://input"), true)){
$data = $json;
}
print_r($data);
?>
信息将发布,然后可以通过 'request.log'
访问
希望以后能对其他人有所帮助。
所以我正在创建一个 click2call 应用程序,使用 Tropo 和 Nexmo,此时,我需要帮助设置 webhook。 它们都提供了一个指向 webhook 的位置,但现在,我不明白该在其中包含什么。是 php 文件吗?还是 json? 我已经尝试创建一个 php 并具有以下内容:
<?php
header('Content-Type: application/json');
ob_start();
$json = file_get_contents('php://input');
$request = json_decode($json, true);
$action = $request["result"]["action"];
$parameters = $request["result"]["parameters"];
$output["contextOut"] = array(array("name" => "$next-context", "parameters" =>
array("param1" => $param1value, "param2" => $param2value)));
$output["speech"] = $outputtext;
$output["displayText"] = $outputtext;
$output["source"] = "whatever.php";
ob_end_clean();
echo json_encode($output);
?>
我以后如何从我的 webhook 检索信息并将其存储在数据库中?我看过一些代码,但我不知道在哪里包含它...... 是在我的 api 中,在我的 webhook 指向的 php 文件中吗? 提前谢谢你。
Webhook url 是您服务器上的一个地方,当发生某些事情并且您需要了解时,上述提供商会不时发送数据,例如,您可能每次收到短信时都会收到请求已发送,或者每次短信发送失败时,您可以根据该信息采取进一步的行动,例如标记用户 phone 号码不再有效的事实。
假设您的 webhook url 类似于 https://www.yoursite.com/webhooks.php
,这意味着在您的 webhooks.php
文件中您必须放置一些 PHP 代码来读取传入的请求和将使用它包含的信息做一些事情。
所以我想出了一个非常简单的方法。只需使用以下代码将您的 webhook 指向 php:
<?php
// Original Answer
header('Content-Type: application/json');
$request = file_get_contents('php://input');
$req_dump = print_r( $request, true );
$fp = file_put_contents( 'request.log', $req_dump );
// Updated Answer
if($json = json_decode(file_get_contents("php://input"), true)){
$data = $json;
}
print_r($data);
?>
信息将发布,然后可以通过 'request.log'
访问希望以后能对其他人有所帮助。