Код: Выделить всё
function doGet(e) {
Logger.log('In doGet');
Logger.log('query params: ' + e);
var isNull = (e.queryString == null);
var len = e.parameters.length;
Logger.log('query string is null: ' + isNull);
Logger.log('number of params: ' + len);
if (e.queryString == null) { //doesn't work!
Logger.log('Serving loginUI');
return HtmlService
.createHtmlOutputFromFile('loginUI')
.setSandboxMode(HtmlService.SandboxMode.IFRAME)
.addMetaTag('viewport', 'width=device-width, initial-scale=1')
.setTitle("Please log in");
}
//if here, we know query string is NOT null
if (e.parameter.mode == "player") {
return HtmlService
.createHtmlOutputFromFile('playerUI')
.setSandboxMode(HtmlService.SandboxMode.IFRAME)
.addMetaTag('viewport', 'width=device-width, initial-scale=1')
.setTitle("Following Player");
}
if (e.parameter.mode == "hole") {
return HtmlService
.createHtmlOutputFromFile('playerUI')
.setSandboxMode(HtmlService.SandboxMode.IFRAME)
.addMetaTag('viewport', 'width=device-width, initial-scale=1')
.setTitle("Following Hole");
}
if (e.parameter.mode == "flex") {
return HtmlService
.createHtmlOutputFromFile('flexUI')
.setSandboxMode(HtmlService.SandboxMode.IFRAME)
.addMetaTag('viewport', 'width=device-width, initial-scale=1')
.setTitle("Flex Interface");
}
}
Код: Выделить всё
> [17-10-24 18:14:48:557 PDT] Starting execution [17-10-24 18:14:48:565
> PDT] Logger.log([In doGet, []]) [0 seconds] [17-10-24 18:14:48:566
> PDT] Logger.log([query params: [object Object], []]) [0 seconds]
> [17-10-24 18:14:48:566 PDT] Logger.log([query string is null: false,
> []]) [0 seconds] [17-10-24 18:14:48:567 PDT] Logger.log([number of
> params: undefined, []]) [0 seconds] [17-10-24 18:14:48:568 PDT]
> Execution succeeded [0.003 seconds total runtime]
В качестве дополнительного вопроса моя идея состоит в том, чтобы создать строки запроса в javascript, связанные с html-файлами, которые обслуживаются doGet. Например, в файл «loginUI.html», упомянутый в приведенном выше коде, я хочу включить код jquery, который вызывает google.script.run.doGet() с различными параметрами, как показано ниже:
Код: Выделить всё
$("#playerUI").click(function () {
var queryString = "?mode=player";
google.script.run.doGet(queryString);
});
$("#holeUI").click(function () {
var queryString = "?mode=hole";
google.script.run.doGet(queryString);
});
$("#flexUI").click(function () {
var queryString = "?mode=flex";
google.script.run.doGet(queryString);
});
Подробнее здесь: https://stackoverflow.com/questions/469 ... -undefined
Мобильная версия