Как я могу развернуть и вызвать функцию скрипта Google Apps удаленно с помощью CLASP и API выполнения? »Javascript

Форум по Javascript
Ответить
Anonymous
 Как я могу развернуть и вызвать функцию скрипта Google Apps удаленно с помощью CLASP и API выполнения? »

Сообщение Anonymous »

Я пытаюсь настроить минимальный «тест на дым», который доказывает, что я могу удаленно вызвать функцию в автономном проекте сценария Google Apps, используя либо API выполнения сценария приложений, либо запустить. function getMessage() {
return "✅ Standalone smoke test successful!";
}

< /code>
из командной строки через: < /p>
clasp run getMessage

or

a REST POST to https://script.googleapis.com/v1/scripts/:run

Шаги настройки, выполненные
Я списал на сценарии следующего конечного:
Создать автономный скрипт через Clasp
npx @google/clasp@2.5.0 create --type standalone --title "Standalone Smoke Test"

< /code>
Написать источник и манифест < /p>
# Code.js
function getMessage() {
return '✅ Standalone smoke test successful!';
}

# appsscript.json
{
"timeZone": "America/Los_Angeles",
"exceptionLogging": "STACKDRIVER",
"executionApi": {
"access": "ANYONE"
}
}


push -код
npx @google/clasp@2.5.0 push

< /code>
Скрипт ассоциированного с помощью проекта GCP < /p>
  • вручную связала проект скрипта приложений с проектом GCP с включенным счетом. /> < /ul>
    развернуть с помощью clasp@3.0.6-alpha < /p>
    npx @google/clasp@3.0.6-alpha deploy --description "Initial API Executable deploy"

    < /code>
    идентификатор развертывания был записан. REST API: < /p>
    ACCESS_TOKEN=$(gcloud auth application-default print-access-token)

    curl -s -X POST \
    -H "Authorization: Bearer $ACCESS_TOKEN" \
    -H "Content-Type: application/json" \
    -d '{"function": "getMessage"}' \
    "https://script.googleapis.com/v1/scripts/$SCRIPT_ID:run"

    < /code>
    → Результат: < /p>
    {
    "error": {
    "code": 403,
    "message": "The script.googleapis.com API requires a quota project, which is not set by default...",
    ...
    }
    }

    < /code>
    b. Запустить: < /p>
    npx @google/clasp@3.0.6-alpha run getMessage

    < /code>
    Результат: < /p>
    Unable to run script function. Please make sure you have permission to run the script function.

    < /code>
    Я также пытался явно указать идентификатор развертывания -но -deploymentId не поддерживается в Clasp 3.x. < /p>
    ❓ Мои вопросы < /h3>

    clasp run
  • API выполнения REST (RESTscripts/:run)
Я включаю сценарий ниже со всеми шагами, которые я прошел, что все еще привело меня к Фалуре. >> < /p>
#!/usr/bin/env bash
set -euo pipefail

PROJECT_ID="campaigns-464120"
PROJECT_NUMBER="873476896416"
WORKDIR="/tmp/standalone_smoke_test"

echo "🧹 Cleaning workdir..."
rm -rf "$WORKDIR"
mkdir -p "$WORKDIR"
cd "$WORKDIR"

echo "📦 Initializing npm and clasp..."
npm init -y >/dev/null
npm install --save-dev @google/clasp@2.5.0 >/dev/null

echo "🔐 Logging into clasp@2.5.0 (required if not already logged in)..."
npx --yes @google/clasp@2.5.0 login

echo "📁 Creating standalone script..."
npx --yes @google/clasp@2.5.0 create --type standalone --title "Standalone Smoke Test"
SCRIPT_ID=$(jq -r .scriptId .clasp.json)

echo "🆔 Script ID: $SCRIPT_ID"

echo "🧾 Creating function and manifest..."
cat > Code.js

Подробнее здесь: https://stackoverflow.com/questions/797 ... ng-clasp-a
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Javascript»