【问题标题】:Web Request through Maker Channel of IFTTT not sending any data通过 IFTTT Maker Channel 的 Web 请求未发送任何数据
【发布时间】:2016-08-16 12:18:21
【问题描述】:

我有一个简单的 IFTTT 配方,只要发布带有 #dog 主题标签的 instagram 照片就会触发(用作示例,因为它几乎每秒触发一次,便于排除故障)。这工作正常。关联的操作是使用Maker 向网站提交GET 调用,如下图所示。

然后运行一个非常简单的PHP 脚本,如下所示。

$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}
$dump = $conn->real_escape_string(var_export($_GET, true));
$sql = sprintf("INSERT INTO table (dump) VALUES ('%s');", $dump);
echo $sql;
if ($conn->query($sql) !== TRUE) {
    echo "#######Error: ". $conn->error ."#######<br/>";
}
$conn->close();

这应该只是将$GET 数组“转储”到MySQL 表中。当我使用浏览器运行PHP脚本如

http://www.example.com?data=test&data2=testing

我在数据库中得到了正确的响应。但是,当通过 IFTTT 触发时,我得到一个空数组。

我已经尝试了Content Type 以及POSTGET Methods 的所有选项,但无论哪种方式都没有提交任何内容。我通过将 GET 调用放在 URL 字段中找到了一种解决方法,但这并不整洁,我认为它应该可以工作,所以想了解这个问题。另外,如果可能的话,我想 POST 而不是 GET。

我认为问题出在Body 并且格式不正确,但我已经尝试了所有我能想到的组合,您在这里看到的是 IFTTT 上的示例的显示方式。

有没有人有任何想法或已知的解决方案。

谢谢,

【问题讨论】:

    标签: php json url get ifttt


    【解决方案1】:

    您需要像您提到的那样将数据嵌入到 URL 本身中。这就是 GET 请求的工作方式。如果你想让它保持整洁并且不在 URL 中嵌入数据,你可以在 PHP 脚本中使用 $_POST,然后使用 IFTTT 中的正文部分来嵌入数据,如屏幕截图所示。

    【讨论】:

    • POST 是我所追求的,但它不起作用(我在我的 PHP 中使用 $_POST 作为 POST 示例)。 GET 只是我目前的解决方法,并且运行良好,但在我看来,IFTTT 存在错误。
    猜你喜欢
    • 2017-03-17
    • 1970-01-01
    • 2016-01-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-05
    • 1970-01-01
    • 2018-07-03
    相关资源
    最近更新 更多