Google App Script から Could Functions を実行するために
経緯
Google App Scriptだけでは外部ライブラリを使ったりnpmを使ったりするのが難しいの
Cloud Functions で処理してデータを返してもらって作ろうと思った時の認証について
ひとまず簡易なやり方で
結論
- GCPでOAuth 同意画面を作成
- Google App Script側をOAuth 同意画面作ったGCPプロジェクト作成
- appscript.jsonの編集してOAuthスコープの設定
あと下記のようなコードで認証できる
function myFunction() {
const url = "https://xxxxxx.cloudfunctions.net/xxxxx"
const res = UrlFetchApp.fetch(url, {
headers: {
Authorization: `Bearer ${ScriptApp.getIdentityToken()}`
}
})
console.log(res.getContentText()) // Fnctiionの結果
}
GAS(GoogleAppsScript)から認証付きのCloud Functionsをサービスアカウントを使用して呼び出す #GoogleCloud - Qiita GASから認証付きのCloud Functionsを実行する。 #GoogleCloud - Qiita
Google Apps Script (GAS) から Cloud Functions に認証付きでアクセスする – kkuchima memo
Google Apps Script で書かれたアドオンのバックエンドを Cloud Run に移行した話 - Link and Motivation Developers' Blog
GAS + CloudFunctionsでVisionAPIの処理結果をスプレッドシートに出力する #GoogleAppsScript - Qiita