通过 Webhook 在主题内提交回复

大家好,
我搜索了一下,但没找到正确的方向。

我想在 GitHub 仓库提交代码后,自动在某个主题内发布回复——通过 Webhook 自动完成。

我使用 Integromat,并且已经成功实现过类似的功能,比如 创建主题

我已经在 Discourse 中配置了 API,在 GitHub 中设置了 Webhook,并在 Integromat 中创建了 HTTP POST 场景,但还缺少最后一步让它运行起来。

我目前的尝试如下,但无法工作。

我想可能是因为 Discourse 不知道如何处理这个 POST 请求。
我的意思是,有 /new-message? 和 /new-topic? 接口,但没有 /new-reply? 接口。

也许这是个很简单的问题,提前感谢大家的帮助!

你可以通过逆向工程 Discourse API 来了解如何构造你的请求。基本上,你只需打开网络检查器,向某个主题发布回复,然后观察其后台运作:

1 个赞

非常感谢 @bartv
我现在就去做 :slight_smile:

只有一个问题:发起回复 POST 请求时,是否所有字段都是必填的?字段数量相当多,而且我认为其中一些字段无法由我动态填写,或者容易出错!(例如 id:)

例如在 Zapier 中,我曾仅使用以下数据字段成功创建了一个主题 POST Webhook

我怀疑它们并非都是必需的。试试看吧 :slight_smile:

1 个赞

仅作信息说明,失败并非由于数据字段,而是因为 CSRF 验证错误。
详见:

@blake 这是否意味着我需要在 Header 中设置 api_username 和 api_key?

我目前失败的进展:

3 个赞

没错,您需要在请求头中设置 Api-UsernameApi-Key。请务必将下划线 _ 改为连字符 -。此外,您还需要从请求体中移除凭据。

2 个赞

太棒了,非常感谢 @blake
就是这个问题。

对于像我这样在 Google 和搜索中苦苦寻找数小时的人来说,答案就在这里:

2 个赞

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.