Wykonywanie skryptów aplikacji
Zadbaj o dobrą organizację dzięki kolekcji
Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.
Wykonaj funkcję
/**
* Executes an Apps Script function in a remote Apps Script.
* See: https://developers.google.com/google-ads/scripts/docs/features/third-party-apis#refresh_token_grant
* for details on configuring this script.
*
* NOTE: This script also requires the OAuth2 library to be pasted at the end,
* as obtained from https://developers.google.com/google-ads/scripts/docs/examples/oauth20-library
*/
const CLIENT_ID = 'INSERT_CLIENT_ID';
const CLIENT_SECRET = 'INSERT_CLIENT_SECRET';
const REFRESH_TOKEN = 'INSERT_REFRESH_TOKEN';
// Enter scopes which should match scopes in File > Project properties
// For this project, e.g.: https://www.googleapis.com/auth/drive
const SCOPES = 'ENTER_SPACE_DELIMITED_SCOPES';
// Script ID taken from 'File > Project Properties'
const SCRIPT_ID = 'ENTER_SCRIPT_ID';
let authUrlFetch;
// Call this function just once, to initialize the OAuth client.
function initializeOAuthClient() {
if (typeof OAuth2 === 'undefined') {
const libUrl = 'https://developers.google.com/google-ads/scripts/docs/examples/oauth20-library';
throw Error(`OAuth2 library not found. Please take a copy of the OAuth2 ` +
`library from ${libUrl} and append to the bottom of this script.`);
}
const tokenUrl = 'https://accounts.google.com/o/oauth2/token';
authUrlFetch = OAuth2.withRefreshToken(tokenUrl, CLIENT_ID, CLIENT_SECRET,
REFRESH_TOKEN, SCOPES);
}
/**
* Execute a remote function.
* @param {string} remoteFunctionName The name of the function to execute.
* @param {Object[]} functionParams An array of JSON objects to pass to the
* remote function.
* @return {?Object} The return value from the function.
*/
function executeRemoteFunction(remoteFunctionName, functionParams) {
const apiParams = {
'function': remoteFunctionName,
'parameters': functionParams
};
const httpOptions = {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
payload: JSON.stringify(apiParams)
};
const url = `https://script.googleapis.com/v1/scripts/${SCRIPT_ID}:run`;
const response = authUrlFetch.fetch(url, httpOptions);
const data = JSON.parse(response.getContentText());
// Retrieve the value that has been returned from the execution.
if (data.error) {
throw Error(`There was an error: ${response.getContentText()}`);
}
return data.response.result;
}
// Paste in OAuth2 library here, from:
// https://developers.google.com/google-ads/scripts/docs/examples/oauth20-library
O ile nie stwierdzono inaczej, treść tej strony jest objęta licencją Creative Commons – uznanie autorstwa 4.0, a fragmenty kodu są dostępne na licencji Apache 2.0. Szczegółowe informacje na ten temat zawierają zasady dotyczące witryny Google Developers. Java jest zastrzeżonym znakiem towarowym firmy Oracle i jej podmiotów stowarzyszonych.
Ostatnia aktualizacja: 2024-09-11 UTC.
[[["Łatwo zrozumieć","easyToUnderstand","thumb-up"],["Rozwiązało to mój problem","solvedMyProblem","thumb-up"],["Inne","otherUp","thumb-up"]],[["Brak potrzebnych mi informacji","missingTheInformationINeed","thumb-down"],["Zbyt skomplikowane / zbyt wiele czynności do wykonania","tooComplicatedTooManySteps","thumb-down"],["Nieaktualne treści","outOfDate","thumb-down"],["Problem z tłumaczeniem","translationIssue","thumb-down"],["Problem z przykładami/kodem","samplesCodeIssue","thumb-down"],["Inne","otherDown","thumb-down"]],["Ostatnia aktualizacja: 2024-09-11 UTC."],[[["This script allows execution of a function within a remote Google Apps Script using OAuth2 for authorization."],["Requires setting up client ID, client secret, refresh token, scopes, and the remote script ID."],["Uses `initializeOAuthClient` function for one-time OAuth client setup and `executeRemoteFunction` to trigger the remote function."],["The script expects the OAuth2 library to be pasted within it for proper functionality."],["Error handling is included to manage unsuccessful executions of the remote function."]]],[]]