Я новичок в GAS и борюсь с системой разрешений.
Я обычный пользователь Google drive, и я запустил электронную таблицу и попытался добавить в нее код. Мой код работает, но только если я в редакторе кода. Я хочу использовать функцию onEdit (), поэтому для меня важно, чтобы она работала и на листе. Когда я впервые запустил свой код в редакторе, он открыл новое окно, в котором мне нужно было ввести свои учетные данные, чтобы разрешить сценарий, затем он заработал. Если я делаю некоторые изменения в ячейке на моем листе и запускается функция onEdit (), я получаю сообщение об ошибке, которое говорит что-то вроде этого (переведено):
Exception: You are not permitted to call UrlFetchApp.fetch. Required permission: https://www.googleapis.com/auth/script.external_request
В редакторе я отобразил файл манифеста и добавил разрешение для oauthScopes, но на листе я все еще получаю сообщение. Вот как выглядит мой код (упрощенно):
function onEdit(e)
{
var data = {
'key1': 'value1',
'key2': 'value2'
};
var options = {
'method' : 'post',
'contentType': 'application/json',
'payload' : JSON.stringify(data)
};
try{
var response = UrlFetchApp.fetch('https://a-working-url.com', options); //error happening in this line
//some more data wizardry
}catch(error)
{
Browser.msgBox(error)
}
}
Любые идеи, как я могу открыть этот экран разрешений в моем листе или какие-либо советы, как решить его по-другому? Я хочу создать лист с некоторым кодом, работающим в сети. Я хочу поделиться листом с некоторыми друзьями, пробовал его в Excel и VBA раньше, пока не понял, что он не работает с Excel Online, поэтому я переключился на GAS.
Заранее спасибо за помощь:)