タイトルの件を実現する仕組みを作ってみます
詳しい実行方法はContent ServiceでCSVを返すに書きました
コード.gs
/************************************ https://script.google.com/macros/s/SCRIPT ID/exec?key=temparature_array でtemparature_arrayの中身がcsvで返ってくる ************************************/ function doGet(e) { var param = e.parameter; var keys = Object.keys(param); if(keys.length) {//paramにkeyが存在していたら要求されたデータをCSVにして返す var data = getParamData(param); var out = ContentService.createTextOutput(data).setMimeType(ContentService.MimeType.CSV); return out; } else {//paramにkeyが存在していなかったらindex.htmlを開く return HtmlService.createHtmlOutputFromFile('index'); } } /************************************ 要求されたデータをCSVにして返す ************************************/ function getParamData(param) { var objKey = param['key'];//paramのkeyの値がreturnObjのkeyなので取得して var array = returnObj[objKey];//対象のreturnObjのarrayを取得して var csv = createCSV(array);//csvにして return csv;//返す } /************************************ 配列からcsvを作って返す ************************************/ function createCSV(array) { var csv = ''; for(var i = 0; i < array.length; i++) { csv += array[i] + ',\n'; } return csv; } /************************************ 返す配列を用意しておく ************************************/ var weather_array = [ "はれ", "あめ", "くもり", "ゆき" ]; var temparature_array = [ "あつい", "さむい", "ちょうどいい" ]; /************************************ e.parameterのkeyの値に応じて配列を返すためのオブジェクト ************************************/ var returnObj = { "weather_array": weather_array, "temparature_array": temparature_array } |
index.html
<!DOCTYPE html> <html> <body> <textarea></textarea> </body> </html> |
Webアプリとして導入して作られるURLに
以下のように?key=temparature_arrayのパラメータを付けて
https://script.google.com/macros/s/SCRIPT ID/exec?key=temparature_array
開くと
temparature_arrayの中身がCSVで取得できます
※上記のURLには有効なSCRIPT IDが入っていないので機能しません
関連記事