【问题标题】:Get PHP response into Zapier webhook获取对 Zapier webhook 的 PHP 响应
【发布时间】:2019-07-13 23:27:52
【问题描述】:

我正在将 PipeDrive 与 Post Affiliate Pro(使用它的 API)连接,并且正在使用 Zapier webhooks (POST)。因此,我在与 Post Affiliate Pro 交谈的服务器上使用 PHP 脚本。所以我的 PHP 脚本中有变量,我需要返回这些变量才能在另一个 webhook/或一般操作步骤中使用它们。在 Zapier 中,我在测试步骤时得到的唯一变量是带有我的响应消息的字符串(以及我放在那里的任何变量)。但我需要自己获取所有变量(我猜都是在 JSON 中)。

所以我的问题是:如何在 HTTP POST 请求中返回变量以使它们在 Zapier 中可用(在下拉列表中?)以便在下一个 webhook 中使用它们?

目前我有这样的事情:

if ($result->isError()) {
 echo 'Error: '.$result->getErrorMessage();
} else {
 //echo 'Ok: '.$result->getInfoMessage();
 echo json_encode($orderID);

我正在使用“echo”,但我也尝试使用“return”,但没有产生任何结果。我也尝试使用 json_encode 返回 JSON 但没有运气。还是我什至需要使用另一个 Zapier 步骤?还是我根本无法使用 POST webhook 返回值?我需要使用“Catch Hook”网络钩子吗?我对 Zapier 和 PHP 完全陌生。

Image shows just two Strings ('Text' & 'Text Transaktion') available in Zapier but no other variables

感谢您的帮助!

【问题讨论】:

    标签: php post httprequest webhooks zapier


    【解决方案1】:

    我终于自己发现了。我必须返回一个 JSON,其中包括所有内容。也不可能同时回显任何内容,因为这将导致仅输出一个包含所有值的字符串(就像我之前有过的那样)。

    所以这样的事情就可以了:

    if (!isset($returnValue)) {
      $returnValue = new stdClass();
      $returnValue->order_id = $orderID;
      $returnValue->result_message = $resultMessage;
    }
    
    print_r(json_encode($returnValue));
    

    【讨论】:

      猜你喜欢
      • 2018-07-23
      • 2016-11-22
      • 2018-10-11
      • 2021-06-27
      • 2017-09-16
      • 2019-07-17
      • 2019-08-23
      • 2016-07-15
      • 1970-01-01
      相关资源
      最近更新 更多