Apps 脚本执行
使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。
执行函数
/**
* 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
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2024-09-11。
[[["易于理解","easyToUnderstand","thumb-up"],["解决了我的问题","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["没有我需要的信息","missingTheInformationINeed","thumb-down"],["太复杂/步骤太多","tooComplicatedTooManySteps","thumb-down"],["内容需要更新","outOfDate","thumb-down"],["翻译问题","translationIssue","thumb-down"],["示例/代码问题","samplesCodeIssue","thumb-down"],["其他","otherDown","thumb-down"]],["最后更新时间 (UTC):2024-09-11。"],[[["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."]]],[]]