2015-08-24 2 views
0

Я новичок с Google-приложений-скрипт, и я был бы признателен за вашу помощь в этом вопросе:веб-приложений - doGet() - анонимных пользователей

У меня есть функция «Brownformat()», который я называю из боковой панели который выполняет код ниже:

Code.gs

function onOpen() { 
    SpreadsheetApp.getUi() 
    .createMenu('Custom Menu') 
    .addItem('Custom Sidebar', 'showSidebar') 
    .addToUi(); 
    showSidebar() 
} 

function showSidebar() { 
    var html = HtmlService.createHtmlOutputFromFile('Page') 
    .setSandboxMode(HtmlService.SandboxMode.IFRAME) 
    .setTitle('Sidebar') 
    .setWidth(300); 
    SpreadsheetApp.getUi() // Or DocumentApp or FormApp. 
    .showSidebar(html); 
} 

function Brownformat() { 
    SpreadsheetApp.getActiveRange().setBackground("#e1b99c"); 
} 

page.html

<p>Brown Group</p> 
<input type="button" value="" style="background-color:#e1b99c; color:#f00;" 
    onclick="google.script.run.Brownformat()" /> 

В основном это функция меняет цвет фона текущей ячейки на коричневый, нажав кнопку на боковой панели.

Эта функция работает отлично, когда вы вошли в систему, но она не запускается для анонимных пользователей.

Я прочитал, что вам нужно опубликовать свой код в качестве веб-приложения, чтобы обойти эту проблему и использовать специальные функции обратного вызова.

Может ли кто-нибудь показать мне, как реализовать эту функцию обратного вызова для фрагмента кода, показанного выше?

спасибо.

Chalo

+0

уточните, потому что вы не можете даже показать боковую панель (или добавить меню или обработчики кликов на изображения и т. Д.) Для анонимного пользователя. это ваша проблема, а не сама по себе функция не работает, правильно? –

+0

Zig, это правильно, но у меня создалось впечатление, что для создания веб-приложения функции необходимо определить с помощью функций обратного вызова. Не только функция Brownformat, но и вы сказали, что функции показывают боковую панель и пользовательские меню. Спасибо. –

+0

Да и от простых триггеров, таких как onOpen –

ответ

0

как это невозможно показать боковую панель для анонимных пользователей. вам нужно будет сделать webapp и включить URL-адрес webapp в лист, чтобы они запускали его вручную на другой вкладке.

+0

Я выполнил следующие действия: [Веб-приложения] (https://developers.google.com/apps-script/guides/web), и я получаю эту ошибку: функция скрипта не найдена: doGet. –

+0

, что не связано с кодом, опубликованным в вашем вопросе. на странице, которую вы указали, четко сказано, что вам нужен «doGet». задайте отдельный вопрос, если у вас все еще есть проблемы, включите в него соответствующий новый код. –

Смежные вопросы