Что делает программа: Я написал простой скрипт Служб Google, который извлекает непрочитанные электронные письма из ярлыка в учетной записи Gmail, в которой в данный момент выполнен вход, и возвращает количество этих электронных писем и отображает его наВеб-сайт.
Проблема: Эта программа работает, когда я создал веб-приложение на компьютере, на котором я его разработал, и запустил его с веб-сайта. Однако, если я скопирую URL-адрес и разошлю его на другой компьютер, который зарегистрирован как другой аккаунт Google, он не будет работать.
Код:
/*Sample.gs*/
function doGet(e){
return HtmlService.createHtmlOutputFromFile('Run.html');
}
function GetUnreadCount(sourceLabel){
return GmailApp.getUserLabelByName(sourceLabel).getUnreadCount();
}
function Main()
{
/*For testing, return unread email count from "CustomerA" label of Gmail*/
return GetUnreadCount("CustomerA");
}
.
/*Run.html*/
<!DOCTYPE html>
<html>
<head>
<base target="_top">
<script>
function CallGetUnreadCount() {
document.getElementById('Messages').innerHTML = 'Counting...';
google.script.run
.withSuccessHandler(onSuccess)
.withFailureHandler(onFailure)
.Main();
}
function onSuccess(UnreadCount)
{
document.getElementById('Messages').innerHTML = "There are " + UnreadCount + " unread emails.";
}
function onFailure(error)
{
document.getElementById('Messages').innerHTML = "Err: " + error.message;
}
</script>
</head>
<body>
<div>
<h1 id="Messages">Count # of unread emails</h1>
</div>
<div>
<button type="button" onclick='CallGetUnreadCount();' id="CountButton">Count Unread Emails</button>
</div>
</body>
</html>
Эта программа отлично работает, если я запускаю ее на компьютереЯ написал этот скрипт на. Однако, если я разверну его как веб-приложение и разошлю URL-адрес (оканчивающийся на /exec
), и запусту его на другом компьютере, который вошел в систему под другой учетной записью Gmail, он всегда возвращает 0, даже если в нем есть непрочитанные письма. CustomerA
ярлык. Что меня смущает, так это то, что эта же программа работает на другом компьютере, если я создаю новый проект на этом компьютере и скопирую приведенный выше код в файл .gs
и html
и разверну его как веб-приложение.
Почему одна и та же программа работает, если каждый компьютер самостоятельно развертывает веб-приложение, но не работает, если я распространяю URL-адрес?