3

我试图让我的Firebase云端函数调用使用Google Apps脚本部署的简单Web应用程序。有人可以指出任何示例或帮助找出下面我的代码中的错误的原因是什么。非常感谢您的帮助。从云端函数为Firebase调用Google AppScript Web应用程序

-

我已经创建了与谷歌Apps脚本在简单的Web应用程序。

function doGet() { 
    return ContentService.createTextOutput('Hello world'); 
} 

我在Firebase Cloud Function中使用request-promise调用此方法。我试图尽可能接近为Cloud Functions提供的Google Translate示例。但是,当调用Cloud Function时,会出现以下错误。

RequestError: Error: getaddrinfo ENOTFOUND script.google.com 
script.google.com:443 

这里是我的云功能代码 -

const functions = require('firebase-functions'); 
const admin = require('firebase-admin'); 
admin.initializeApp(functions.config().firebase); 
const request = require('request-promise'); 

exports.makeUppercase = 
functions.database.ref('/users/{userid}/logs/{logid}/mykey') 
.onWrite(event => { 

    var url = `https://script.google.com/macros/s/.../exec`; 
    var retstr = request(url, {resolveWithFullResponse: true}).then(
    response => { 
    if (response.statusCode === 200) { 
     const data = response.body; 
     return event.data.ref.parent.child('uppercase').set(data); 
    } 
    throw response.body; 
    }); 
}); 

由于提前,

问候 拉胡尔

+0

您是否要求安装? –

回答

-1

我有同样的问题,并发现这个答案(https://stackoverflow.com/a/42775841)。 似乎称为Google Apps脚本被认为是外部的。

+0

问候,这不是一个明确的答案,这很可能。这个问题应该被标记为建议链接的副本。 – Nic3500

+0

我与Firebase支持联系并获得回复: 如果您处于免费层(Spark计划),则此问题是预期行为,因为调用出站网络请求是此计划的限制。目前,Google Apps脚本不在Cloud Functions支持的服务列表中,因此目前只能访问它的方式是升级到付费计划,请参阅定价页面以获取更多信息。 – akuroda

相关问题