【问题标题】:Posting to Google Apps Script from Firebase Functions / Axios从 Firebase 函数/Axios 发布到 Google Apps 脚本
【发布时间】:2021-01-10 00:26:14
【问题描述】:

我有一个 Google AppScript 将一行附加到 Google 表格。当我使用 Postman 时,该帖子工作正常,并且该行按预期添加。现在我正在使用 Firebase 函数在 onCreate 中发布。在 node.js 中:

exports.userOnCreate = functions.firestore.document('User/{uid}').onCreate(async (userSnap, context) => {
    if (userSnap.data().subscribe) {
        const data = {
            submittedOn: Date.now(),
            email: userSnap.data().email,
        };

        await axios.post(GOOGLE_SHEETS_SUBSCRIBE, data)
            .then((res) => {
                console.log(`Status: ${res.status}`);
                console.log('Body: ', res.data);
            }).
            catch((err) => {
                console.error(err);
            })
    }
});

我的函数日志显示它返回状态为 200,但未添加该行。在我的 AppScript 执行日志中,它显示正在运行 60 秒,然后更新为未知状态。

我有“以我的身份执行应用程序”和“允许任何人访问,甚至是匿名的。”

请帮忙!谢谢。

【问题讨论】:

  • 显示您的应用脚本。在每个步骤中添加 console.log() 并查看导致问题的行。您可能需要切换到标准的谷歌云项目才能查看日志
  • 我真的很难找到日志。我不确定如何切换 GCP。我在 GCP 中,但不确定它如何链接到 Apps 脚本。我可以在那里看到日志,但它没有我要查找的任何输出。
  • 非常感谢

标签: post google-apps-script axios google-cloud-functions


【解决方案1】:

axios 不发送数据存在问题。我不得不安装 qs 并将帖子更改为:

await axios.post(GOOGLE_SHEETS_SUBSCRIBE, qs.stringify(data))

【讨论】:

    猜你喜欢
    • 2018-03-15
    • 1970-01-01
    • 1970-01-01
    • 2013-06-25
    • 1970-01-01
    • 1970-01-01
    • 2022-01-05
    • 2021-03-19
    • 1970-01-01
    相关资源
    最近更新 更多