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

相關問題