Сценарий GAS-приложений запускает веб-приложение с токеном - 403 запрещено - PullRequest
1 голос
/ 09 марта 2020

У меня есть 2 сценария, развернутые как веб-приложение. Первый имеет функцию doGet, которая создает пост-запрос ко второму приложению с помощью функции doPost. Запрещено при вызове первой функции doGet

<HTML>
<HEAD>
<TITLE>Forbidden</TITLE>
</HEAD>
<BODY BGCOLOR="#FFFFFF" TEXT="#000000">
<H1>Forbidden</H1>
<H2>Error 403</H2>
</BODY>
</HTML>

Первое приложение: функция -doGet -Выполнить приложение как: пользователь, имеющий доступ к веб-приложению -У кого есть доступ к приложению: кто угодно Манифест "oauthScopes": ["https://www.googleapis.com/auth/script.external_request", "https://www.googleapis.com/auth/drive.readonly"],

function doGet(e) {

  var url = #url_to_second_app

  var headers = {
    "Authorization" : "Bearer " + ScriptApp.getOAuthToken()
  };

  var params = {
    "method":"post",
    "headers": headers,
    "muteHttpExceptions": true
  };

  var response;
  try{
    response = UrlFetchApp.fetch(url,params);
  }catch(err){
    response = err;
  }  
  Logger.log(response);
  return ContentService.createTextOutput(response);
}

Второе приложение: функция -doPost -Выполнить приложение как: я -У кого есть доступ к приложению: кто угодно

function doPost(e) {
return ContentService.createTextOutput("hello world!");

1 Ответ

0 голосов
/ 09 марта 2020

Кто имеет доступ к приложению: Кто угодно

Для анонимного доступа ко второму приложению второй сценарий должен быть опубликован как

Любой даже анонимный

В качестве альтернативы, диск второго приложения должен использоваться совместно со скриптом первого приложения 1 .

...