Open3
GAS

GAS API

結果
supabaseとgoogle 0Authを活用して、gasをAPIで動かすことに成功。
GAS側は
function test() {
return "done fucntion"
}
として、returnしている。
下記でsupabaseで実際にログインした後に得られるprovider(google)のtokenを得る
const accessToken = computed(() => {
const token = localStorage.getItem("localStorageId"); //ログイン後にlocalStorageにtokenなどが保存されているので、そこから拝借する。
return JSON.parse(token!).provider_token;
});
下記でgasを動かすことができ、resultにはGASでreturnしているものが含まれている。
const executionGoogleAppScript = () => {
fetch(
"実行可能 API", //ここはgasをデプロイした時に得られるもの
{
method: "POST",
headers: {
Authorization: "Bearer " + accessToken.value,
"Content-Type": "application/json",
},
body: JSON.stringify({
function: "test",
}),
}
)
.then((res) => {
res.json().then((data) => console.log(data.response.result));
})
.catch((err) => {
console.log(err);
});
};

slackAPIとGAS
GAS上では呼び出せていたslack APIをlocalhostからGAS APIを叩いてslack APIを動かし、userlistを取ろうとしたらできなかった。
IPアドレスによる制限があり、localのIPアドレスとIPv6には対応してないので、そもそも開発環境をどうするかが課題。