Wykonywanie funkcji Google Apps Script

Interfejs Google Apps Script API umożliwia zdalne wykonywanie funkcji w projekcie skryptu, do którego masz dostęp. Aplikacja może wywołać daną funkcję Apps Script, w razie potrzeby podając parametry wejściowe i otrzymując odpowiedź.

Przykłady na tej stronie pokazują, jak za pomocą interfejsu API można wykonywać typowe operacje. Więcej informacji, w tym specjalne wymagania dotyczące autoryzacji, znajdziesz w przewodniku Wykonywanie funkcji.

W tych przykładach symbol zastępczy scriptId wskazuje miejsce, w którym należy podać identyfikator projektu skryptu. Aby znaleźć identyfikator skryptu, wykonaj te czynności:

  1. W projekcie Apps Script w lewym górnym rogu kliknij Ustawienia projektu .
  2. Obok opcji „Identyfikator skryptu” kliknij Kopiuj.

Wykonaj funkcję

Poniższe wywołanie żądania scripts.run wywołuje funkcję Apps Script o nazwie listFolderContent, przekazując jej jako argumenty folderId z Dysku Google i liczbę całkowitą MAX_SIZE. Funkcja jest wykonywana w trybie deweloperskim, co oznacza, że wykonywana jest ostatnio zapisana wersja funkcji, niezależnie od tego, która wersja jest wdrożona jako plik wykonywalny.

Protokół żądania jest widoczny poniżej. W przewodniku Wykonywanie funkcji znajdziesz informacje o tym, jak zaimplementować żądanie uruchomienia w różnych językach za pomocą bibliotek klienta interfejsu API Google.

POST https://script.googleapis.com/v1/scripts/scriptId:run
{
  "function": "listFolderContent",
  "parameters": [
    folderId,
    MAX_SIZE
  ],
  "devMode": true
}

Odpowiedź na to żądanie, po zakończeniu wywołanej funkcji Apps Script, zawiera wyniki wykonania lub odpowiedź o błędzie. W tym przykładzie funkcja zwraca tablicę nazw plików:

{
  "response": {
    "result": [
      "fileTitle1",
      "fileTitle2",
      "fileTitle3"
    ]
  },
}

Jeśli podczas wykonywania skryptu Apps Script wystąpił błąd, odpowiedź może wyglądać tak:

{
  "response": {
    "error": {
      "code": 3,
      "message": "ScriptError",
      "details": [{
        "@type": "type.googleapis.com/google.apps.script.v1.ExecutionError",
        "errorMessage": "The script enountered an exeception it could not resolve.",
        "errorType": "ScriptError",
        "scriptStackTraceElements": [{
          "function": "listFolderContent",
          "lineNumber": 14
        }]
      }]
    }
  }
}