Связь клиент-сервер в GAS
Это потому, что файлы .gs выполняются на сервере, а не на стороне клиента. Сценарий Apps имеет собственную реализацию асинхронных серверных вызовов через клиентский API google.script.run
.
Использование google.script.run
довольно просто, вы просто вызываете функции на стороне сервера, добавляя их имя, например, google.script.run.yourServerFunction(yourParameters)
, и, если ваша функция на стороне сервера имеет оператор return
, вы можете работать с возвращаемым значением через функция обратного вызова на стороне клиента передается методу withSuccessHandler()
(если вы хотите передать что-либо на стороне клиента функции обратного вызова после завершения выполнения функции на стороне сервера, вы можете сделать это с помощью вызова метода withUserObject(dataToPass)
- просто запомните, что первый аргумент функция обработчика успеха всегда является значением, возвращаемым со стороны сервера).
Модифицированный HTML
В вашем случае простая модификация сработает (при условии, что вы вызываете функцию login()
на стороне сервера:
<script type="text/javascript">
function success(fromServer,fromClient) {
//doSomething on success;
}
function failure(error) {
//doSomething on failure;
}
function login() {
var myObject = ''; //add something to callback on success;
google.script.run
.withSuccessHandler(success)
.withFailureHandler(failure)
.withUserObject(myObject)
.login();
}
</script>
Полезные ссылки
google.script.run
ссылка ;
- Связь клиент-сервер руководство ;