GAS - Authentifizierung mit UrlFetchApp - Form to Spreadsheet

Ich teste die Funktionalität von UrlFetchApp und übergebe Daten aus einem Formular und seiner Tabelle. Ich weiß, dass es auch anders geht, aber ich teste die Funktionalität von UrlFetchApp (erstmalige Verwendung) in Google-Skripten selbst und möchte, dass es mit dieser Methode funktioniert.

Hier ist das Szenario, in dem ich ein gebundenes Skript zu einer Formularanwendung hinzufüge:

function makeRequest() 
{
  var webAppUrl = "https://script.google.com/macros/s/WebAppID/exec";

  var auth = ScriptApp.getOAuthToken();
  var header = { 'Authorization': 'Bearer ' +  auth };
  var options = { 'method':'post', 'headers':header };

  var resp = UrlFetchApp.fetch(webAppUrl, options);

  Logger.log(resp);
}

Fügen Sie dem angehängten Arbeitsblatt ein gebundenes Skript hinzu:

function doPost()
{  
  var ss = SpreadsheetApp.openById('ssID');
  var name = ss.getName();
  return ContentService.createTextOutput(name);
}

Und veröffentlichen Sie dann dieses zweite Skript, das als Webanwendung an das Blatt angehängt ist, und haben nur ich selbst Zugriff.

Zurzeit funktioniert der obige Code nicht. Der folgende Fehler wird auf der Formularseite des Skripts angezeigt:

Anfrage fehlgeschlagen fürhttps: //script.google.com/macros/s/WebAppID/exe zurückgegebener Code 401. Abgeschnittene Serverantwort: Nicht autorisiert

UnauthorizedError 401 (Verwenden Sie die Option muteHttpExceptions, um die vollständige Antwort zu überprüfen.) (Zeile 12, Datei "Code")

Fails in der UrlFetchApp-Codezeile.

Wenn ich jedoch die Header-Option entferne und die Web-App für die öffentliche Verwendung veröffentliche, funktioniert dies einwandfrei. Offensichtlich ist das nicht erwünscht.

Was fehlt mir bezüglich der Authentifizierung zwischen Skripten, die ich besitze?

Side Notes:

Weiß jemand, warum SpreadsheetApp.getActiveSheet () nicht funktioniert, wenn es auf diese Weise ausgeführt wird? Dieses Skript ist direkt an ein Google Sheet gebunden, also irgendwie seltsam.

Antworten auf die Frage(4)

Ihre Antwort auf die Frage