【问题标题】:Reading JSON from HTTP POST using PHP (Typeform)使用 PHP (Typeform) 从 HTTP POST 读取 JSON
【发布时间】:2019-05-29 21:54:21
【问题描述】:

我无法读取来自 webhook (Typeform) 的 JSON 数据(使用 PHP)。

我已经尝试了Here 提供的解决方案,但我仍然得到一个空数组。我的代码与链接中显示的示例完全相同(尽管我没有访问特定的数组,我只想读取数据。)我所有的测试交付都返回 200,所以我有点卡住了。

$data = json_decode(file_get_contents('php://input'));

var_dump($data);

【问题讨论】:

    标签: php json typeform


    【解决方案1】:

    TypeForm 运行页面,他们会得到 var_dump 响应...

    当您运行页面时,您还没有发布任何内容,因此 $data 为空,因此为空

    尝试将 $data 保存到文件中,然后当 TypeForm POST 到该文件时,您可以看到该文件中的 POST 内容是什么

    file_put_contents("webhookData.txt",$data, FILE_APPEND);
    

    【讨论】:

    • 感谢您的快速回复。我在 file_get_contents 行下面添加了您提到的代码,虽然我仍然从 Typeform 获得了 200 个代码,但没有任何内容写入 txt 文件。我可以从 Typeform 的测试交付中看到有效负载,因此应该将其写入 txt 文件正确吗?
    • 是的,文本文件应该包含 Typeform 发送到服务器的所有内容。从技术上讲,如果 Typeform 正在 POST JSON 数据,您可以将 $_POST 作为文件数据源而不是 $data。试试看,看看你得到了什么数据
    • 我用 $_POST 替换了 $data 并且在测试交付和表单提交后 txt 文件仍然是空的。
    • 您确定该页面正在获得点击吗?仔细检查文件是否从 Typeform 端获取数据
    • webhook 的 url 是正确的(测试返回 200,表单提交也是如此)但在 chrome dev 中,提交测试交付或表单提交时没有网络活动。
    猜你喜欢
    • 1970-01-01
    • 2013-10-01
    • 2021-03-09
    • 1970-01-01
    • 2011-10-26
    • 1970-01-01
    相关资源
    最近更新 更多