$.post 到 Zapier webhook

Posted

技术标签:

【中文标题】$.post 到 Zapier webhook【英文标题】:$.post to Zapier webhook 【发布时间】:2019-07-17 01:11:16 【问题描述】:

我创建了一个向 Zapier webhook 发送 HTTP POST 的 html 表单。当我在 HTML 中嵌入 POST 操作时,代码效果很好:

<form id="contactForm" action="https://hooks.zapier.com/hooks/catch/2689457/xiooqx/" method="POST"> inputs </form>

但是,我无法轻松确保所有字段都完整、处理响应等。所以,我转向了 JQuery:

    $.post('https://hooks.zapier.com/hooks/catch/2689457/xiooqx/',   // url
         message: 'Test', contact: "NA" , // data to be submit
        function(data, status, jqXHR) // success callback
            alert(data);
        
    )

AJAX 也是如此:

$.ajax(
        type : 'POST',
        url : 'https://hooks.zapier.com/hooks/catch/2689457/xiooqx/',           
        data: 
            message : $('#message').val(),
            contact : $('#contactMethod').val()
        ,
        success:function (data) 
            alert(data);
                  
    );

这些都不起作用。我知道这些 AJAX/JQuery 语句已经到达,但是 Zapier 没有收到数据。

我使用 Jekyll 和 Gulp 来渲染网站,所以网站是静态的(但我仍然应该能够使用 HTTP 方法)。任何帮助将不胜感激。

提前致谢!

【问题讨论】:

你有什么错误吗?如果您还没有,请向您的 ajax 添加错误回调 刚刚添加了错误回调,没有记录错误。 我测试了您的 ajax 请求,我得到了成功响应。 “状态”:“成功”,“尝试”:“5c7077ca-590b-4b41-8125-ed135b86d940”,“id”:“f46ef8d6-c4db-461e-807a-7ffd12a7b23c”,“request_id”:“5c7077ca-590b- 4b41-8125-ed135b86d940"。您必须在 Zapier 端点中进行调查 我看到您的请求已通过 zapier,但它仍然不适用于我的代码。您介意发布您的代码作为答案吗?我这边一定有一个实施问题。 【参考方案1】:
var data = 
            message : 'test stack overflow',
            contact : 'test'
        ;
$.ajax(
        type : 'POST',
        url : 'https://hooks.zapier.com/hooks/catch/2689457/xiooqx/',  
        data: JSON.stringify(data),
        success:function (data) 
            console.log(data);
        ,
        error: function(xhr, status, error) 
        // handle error
      
    );

作为 JSON 字符串发送

【讨论】:

另外,在表单中我需要 onsubmit="return false"。

以上是关于$.post 到 Zapier webhook的主要内容,如果未能解决你的问题,请参考以下文章

通过 Zapier 的 API POST

Zapier Rest Hook 订阅

Zapier 中使用 Webhook 的 POST 错误

Zapier POST 错误“正文已用于”

Zapier 代码 (JS) + Twitter API - POST statuses/retweet/:id

PHP:将表单数据发送到 php 脚本,然后将数据发布到另一个表单处理器,如 zapier.com?