تنفيذ وظائف برمجة التطبيقات
تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
تتيح لك واجهة برمجة التطبيقات لبرمجة تطبيقات Google (المعروفة سابقًا باسم واجهة برمجة التطبيقات لتنفيذ برمجة تطبيقات Google) تنفيذ دالة عن بُعد في مشروع نص برمجي يمكنك الوصول إليه. يمكن لتطبيقك استدعاء دالة معيّنة في "برمجة تطبيقات Google"، وتزويدها بمعلمات الإدخال إذا لزم الأمر، وتلقّي ردّ.
توضّح الأمثلة الواردة في هذه الصفحة كيف يمكن تنفيذ بعض عمليات التنفيذ الشائعة باستخدام واجهة برمجة التطبيقات. لمزيد من المعلومات، بما في ذلك متطلبات التفويض
الخاصة، يُرجى الاطّلاع على دليل تنفيذ دالة.
في هذه الأمثلة، يتم استخدام العنصر النائب scriptId
للإشارة إلى المكان الذي ستوفّر فيه رقم تعريف مشروع البرنامج النصي. اتّبِع الخطوات التالية للعثور على معرّف النص البرمجي:
- في مشروع Apps Script، انقر في أعلى يمين الصفحة على إعدادات المشروع
settings.
- بجانب "معرّف البرنامج النصي"، انقر على نسخ.
تنفيذ وظيفة
يستدعي طلب scripts.run التالي دالة في "برمجة تطبيقات Google" باسم listFolderContent
، مع تمرير folderId في Drive وعدد صحيح MAX_SIZE
كمعلَمات. يتم تنفيذ الدالة في وضع التطوير، ما يعني أنّه يتم تنفيذ أحدث إصدار تم حفظه من الدالة، بغض النظر عن الإصدار الذي تم نشره كملف تنفيذي.
يظهر بروتوكول الطلب أدناه. يوضّح دليل
تنفيذ الدوال
كيفية تنفيذ طلب تشغيل بلغات مختلفة باستخدام مكتبات برامج Google API.
POST https://script.googleapis.com/v1/scripts/scriptId:run
{
"function": "listFolderContent",
"parameters": [
folderId,
MAX_SIZE
],
"devMode": true
}
يتضمّن الردّ على هذا الطلب، بعد اكتمال دالة "برمجة تطبيقات Google" التي تم استدعاؤها، نتائج التنفيذ أو ردًا يتضمّن خطأ. في هذا المثال، تعرض الدالة بنجاح صفيفًا من أسماء الملفات:
{
"response": {
"result": [
"fileTitle1",
"fileTitle2",
"fileTitle3"
]
},
}
إذا واجهت الدالة خطأ أثناء تنفيذ النص البرمجي في "برمجة التطبيقات"، قد يبدو الردّ على النحو التالي:
{
"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
}]
}]
}
}
}
إنّ محتوى هذه الصفحة مرخّص بموجب ترخيص Creative Commons Attribution 4.0 ما لم يُنصّ على خلاف ذلك، ونماذج الرموز مرخّصة بموجب ترخيص Apache 2.0. للاطّلاع على التفاصيل، يُرجى مراجعة سياسات موقع Google Developers. إنّ Java هي علامة تجارية مسجَّلة لشركة Oracle و/أو شركائها التابعين.
تاريخ التعديل الأخير: 2025-08-31 (حسب التوقيت العالمي المتفَّق عليه)
[null,null,["تاريخ التعديل الأخير: 2025-08-31 (حسب التوقيت العالمي المتفَّق عليه)"],[[["\u003cp\u003eThe Apps Script API enables remote execution of functions within your accessible script projects.\u003c/p\u003e\n"],["\u003cp\u003eYou can provide input parameters to the functions and receive corresponding responses.\u003c/p\u003e\n"],["\u003cp\u003eRefer to the "Executing a function" guide for comprehensive information, including authorization requirements.\u003c/p\u003e\n"],["\u003cp\u003eThe provided examples demonstrate how to execute functions and handle potential errors using the API.\u003c/p\u003e\n"]]],[],null,["# Executing Apps Script Functions\n\nThe Apps Script API (and formerly the Apps Script Execution API) allows you\nto remotely execute a function in a script project you have access to. Your\napp can call a given Apps Script function, providing it input parameters if\nneeded, and receive a returned response.\n\nThe examples on this page illustrate how some common execution operations can\nbe achieved with the API. For more information **including special\n[authorization requirements](/apps-script/api/how-tos/execute#requirements)** ,\nsee the [Executing a function](/apps-script/api/how-tos/execute) guide.\n\nIn these examples, the placeholders \u003cvar translate=\"no\"\u003escriptId\u003c/var\u003e\nis used to indicate where you would provide the script project ID. Follow the\nsteps below to find the script ID:\n\n1. In the Apps Script project, at the top left, click **Project Settings** settings.\n2. Next to \"Script ID,\" click **Copy**.\n\nExecute a function\n------------------\n\nThe following [scripts.run](/apps-script/api/reference/rest/v1/scripts/run)\nrequest calls an Apps Script function named `listFolderContent`, passing it\nthe Drive \u003cvar translate=\"no\"\u003efolderId\u003c/var\u003e and an integer `MAX_SIZE` as arguments. The\nfunction is executed in development mode, meaning that the most recently\nsave version of the function is executed, regardless of what version is\ndeployed as an executable.\n\nThe request protocol is shown below. The\n[Executing functions](/apps-script/api/how-tos/execute) guide\nshows how to implement a run request in different languages using the Google\nAPI client libraries. \n\n```\nPOST https://script.googleapis.com/v1/scripts/scriptId:run\n``` \n\n```scdoc\n{\n \"function\": \"listFolderContent\",\n \"parameters\": [\n folderId,\n MAX_SIZE\n ],\n \"devMode\": true\n}\n```\n\nThe [response](/apps-script/api/reference/rest/v1/scripts/run#response-body)\nto this request, once the called Apps Script function completes,\ncontains the results of the execution or an error response. In\nthis example, the function successfully returns an array of file names: \n\n```text\n{\n \"response\": {\n \"result\": [\n \"fileTitle1\",\n \"fileTitle2\",\n \"fileTitle3\"\n ]\n },\n}\n```\n\nIf the function encountered an error during the Apps Script execution, the\nresponse could look like this: \n\n```carbon\n{\n \"response\": {\n \"error\": {\n \"code\": 3,\n \"message\": \"ScriptError\",\n \"/apps-script/api/reference/rest/v1/ExecutionError\": [{\n \"@type\": \"type.googleapis.com/google.apps.script.v1.ExecutionError\",\n \"errorMessage\": \"The script enountered an exeception it could not resolve.\",\n \"errorType\": \"ScriptError\",\n \"/apps-script/api/reference/rest/v1/ExecutionError#ScriptStackTraceElement\": [{\n \"function\": \"listFolderContent\",\n \"lineNumber\": 14\n }]\n }]\n }\n }\n}\n```"]]