質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
Google スプレッドシート

Google スプレッドシートは、フリーで利用できる表計算ソフト。Webアプリのためインターネットに接続することで利用できます。チャートやグラフの作成のほか、シートを他のユーザーと共有したり、同時に作業を進めることも可能です。

Google Apps Script

Google Apps ScriptはGoogleの製品と第三者のサービスでタスクを自動化するためのJavaScriptのクラウドのスクリプト言語です。

Q&A

解決済

1回答

762閲覧

GoogleScriptで 別のページにパラメーターを渡したいのですがV8になってからうまく渡せません。

takamilk2

総合スコア20

Google スプレッドシート

Google スプレッドシートは、フリーで利用できる表計算ソフト。Webアプリのためインターネットに接続することで利用できます。チャートやグラフの作成のほか、シートを他のユーザーと共有したり、同時に作業を進めることも可能です。

Google Apps Script

Google Apps ScriptはGoogleの製品と第三者のサービスでタスクを自動化するためのJavaScriptのクラウドのスクリプト言語です。

0グッド

0クリップ

投稿2021/04/15 02:41

GoogleScriptで
別のページにパラメーターを渡したいのですがV8になってから
うまく渡せずご教授いただければ幸いです。

V8になる前は下記で取得できていたのですが、
doGetのeに値が入っておらず、
パラメーターの取得ができなくなりました。
何かV8でパラメーターの渡し方に変更があったのでしょうか。

下記別ページからおくられてきたURLのパラメーターを
testの123を取得したいのですが

探し方が悪いのか情報を見つけられず。
ご教授いただければ幸いです。

URLのパラメーターの例

"https://sites.google.com/******?test=123"

GoogleScriptの内容

function doGet(e) { var LOG_TEST = 'https://docs.google.com/spreadsheets/d/*****/edit#gid=0'; var ss = SpreadsheetApp.openByUrl(LOG_TEST); var sheet = ss.getSheets()[0]; sheet.appendRow([new Date(),JSON.stringify(e)]); }

スプレッドシートへのeオブジェクトの結果の表示

{ "parameters":{}, "contentLength":-1, "contextPath":"", "queryString":"", "parameter":{} }

上記のようにdoGetのeに何も値が入らず
パラメーターも入っておりません。

実行環境

Google Chrome バージョン: 91.0.4469.4(Official Build)dev (x86_64)

試した事

別の方法で検討していたのですが、
URLパラメーターで渡す代わりに

sessionStorage.setItem('test', nameInput.value); sessionStorage.getItem('test');

sessionStorgeを使って渡そうとしましたが、
GoogleSiteの
リンクがtarget="_self" 自身に飛ぶ事を禁止しており
target="_blank"
でしかアクセスできずsessionStorageが使えませんでした。

ご教授どうぞよろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

特に問題なく取れますよ!
API的に使いたいということですかね?

gas

1 2function doGet(e) { 3 // https://script..../exec?prm=strにアクセス 4 5  var prm = e.parameter 6  //{"prm":"str"} 7 8//↓ https://script..../exec?prm=str に直接アクセスした際に値を確認するため用 9  return ContentService.createTextOutput(JSON.stringify(prm)).setMimeType(ContentService.MimeType.JSON); 10}

投稿2021/05/15 02:51

Tatsunosuke

総合スコア599

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

takamilk2

2021/05/17 11:45

ご返答ありがとうございます。 確かに問題なくとれました。。 投稿したときは急にdoGetのeに値が入らないくなっていたので、 もうv8から使えなくなったと思っており スプレッドシートなどに書き出して読み込みをさせておりました。。 (もしかしたら勘違いだった可能性もございます) ありがとうございました。今後作業がだいぶ楽になります!
Tatsunosuke

2021/05/18 00:45

GAS は謎の挙動がたまにありますね笑 がんばってください!
takamilk2

2021/05/24 04:38

確かに。。ありがとうございます! めげずに頑張ります!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問