【问题标题】:Can I use Google Apps Script as Asana Webhooks endpoint (doPost)?我可以使用 Google Apps 脚本作为 Asana Webhooks 端点 (doPost) 吗?
【发布时间】:2017-05-12 11:42:41
【问题描述】:

我正在尝试将 Google 文档Asana 联系起来。我可以从 Google 文档 创建任务并将连接保存到 MySql 数据库,这样我就可以在 Google 文档 中显示任务。

现在我需要始终将这些任务与 Asana 同步,所以我想创建 Asana webhooks。我在 Google Apps 脚本 中创建了一个 doPost funtion,它应该用作端点。但是当我开始握手时,我没有收到 Asana 对我的 Google Web App 的请求。

为了确保我做的一切都是正确的,我还在 PHP 中创建了一个握手,这是我更熟悉的。我遇到的唯一问题是 SSL 证书。但我认为这不应该是 Google 的问题。而且我的 Google Web App 是公开的,因此不应该有任何限制(我使用 Postman 对其进行了测试。我收到了来自 Postman 的请求。可以肯定我收到了一个请求,我还在 Google 文档中创建了一个日志。)

我做错了什么?

【问题讨论】:

  • 看起来这是一个 Google Apps 脚本代码刷新/更新问题。一天后它开始工作。我没有看到其他解释,因为我没有更改代码中的任何内容,只是在一天后使用相同的代码重复握手测试。现在我在阅读 POST 请求标头时仍然遇到问题。我在 Google Apps 脚本中找不到这样做的方法。
  • 很高兴听到握手现在正在与 Asana 合作。如果您有任何其他问题,请告诉我们。
  • Asana 和 Google Apps Script 之间的握手实际上是不可能的,因为无法设置和读取请求标头。我将把我的研究放在下面的答案中。

标签: google-apps-script webhooks asana-api asana-connect


【解决方案1】:

简答:

Google Apps 脚本不能用作 Asana Webhooks 端点。

长答案:

您可以使用 doPost 函数接收对 Google Apps 脚本的发布请求。这样Asana Webhooks handshake的前两步就可以完成了。但是无法为握手的第三步发送正确的响应,因为您无法读取从 Asana 收到的 post 请求的标头,也无法将响应的标头设置回 Asana。这是我发现的关于在 Google Apps 脚本中读取和设置标题的answer

【讨论】:

  • 太棒了 - 感谢您的深入研究!我已将此添加到我们的 Asana 内部项目中以获取 API 机会;也许如果我们发现有足够多的人有这个问题,我们可以稍微不同地实现握手,例如在握手请求的正文中发送和接收握手密钥。
猜你喜欢
  • 2023-03-31
  • 1970-01-01
  • 2017-11-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-10
  • 2014-12-15
相关资源
最近更新 更多