إذا أنشأت واجهة مستخدم للنص البرمجي، يمكنك نشر النص البرمجي كتطبيق ويب. على سبيل المثال، من الأفضل تقديم نص برمجي يتيح للمستخدمين جدولة المواعيد مع أعضاء فريق الدعم كتطبيق ويب حتى يتمكن المستخدمون من الوصول إليه مباشرةً من متصفحاتهم.
يمكن تحويل كل من النصوص البرمجية المستقلة والنصوص البرمجية المرتبطة Google Workspace بالتطبيقات إلى تطبيقات ويب، شرط أن تستوفي المتطلبات أدناه.
متطلبات تطبيقات الويب
يمكن نشر النص البرمجي كتطبيق ويب إذا كان يستوفي المتطلبات التالية:
- تحتوي هذه المعلّمة على دالة
doGet(e)
أوdoPost(e)
. - تعرض الدالة عنصر خدمة HTML
HtmlOutput
أو كائن خدمة محتوىTextOutput
.
معلَمات الطلب
عندما يزور أحد المستخدمين تطبيقًا أو برنامجًا يرسل إلى التطبيق طلب HTTP GET
، يشغّل برمجة التطبيقات الوظيفة doGet(e)
. عند إرسال أحد البرامج طلب HTTP
POST
، تشغِّل "برمجة التطبيقات" doPost(e)
بدلاً من ذلك. في كلتا الحالتين، تمثّل الوسيطة e
معلّمة حدث يمكن أن تتضمّن معلومات عن أي معلّمات طلب. تظهر بنية كائن الحدث في الجدول أدناه:
الحقول | |
---|---|
e.queryString |
قيمة الجزء من سلسلة طلب البحث لعنوان URL، أو name=alice&n=1&n=2 |
e.parameter |
عنصر من أزواج المفتاح/القيمة التي تتوافق مع معلّمات الطلب. يتم عرض القيمة الأولى فقط للمعلَمات التي تحتوي على قيم متعددة. {"name": "alice", "n": "1"} |
e.parameters |
عنصر مشابه لـ {"name": ["alice"], "n": ["1", "2"]} |
e.pathInfo |
مسار عنوان URL بعد |
e.contextPath |
غير مستخدم، دائمًا ما تكون السلسلة فارغة. |
e.contentLength |
طول نص الطلب لطلبات POST أو 332 |
e.postData.length |
مثل 332 |
e.postData.type |
نوع MIME لنص POST text/csv |
e.postData.contents |
نص المحتوى لنص POST Alice,21 |
e.postData.name |
القيمة دائمًا "postData&" postData |
على سبيل المثال، يمكنك تمرير معلمات مثل username
وage
إلى عنوان URL كما هو موضح أدناه:
https://script.google.com/.../exec?username=jsmith&age=21
وبعد ذلك، يمكنك عرض المعلّمات على النحو التالي:
function doGet(e) {
var params = JSON.stringify(e);
return HtmlService.createHtmlOutput(params);
}
في المثال أعلاه، تعرض doGet(e)
الناتج التالي:
{
"queryString": "username=jsmith&age=21",
"parameter": {
"username": "jsmith",
"age": "21"
},
"contextPath": "",
"parameters": {
"username": [
"jsmith"
],
"age": [
"21"
]
},
"contentLength": -1
}
نشر نص برمجي كتطبيق ويب
لنشر نص برمجي كتطبيق ويب، اتّبع الخطوات التالية:
- في أعلى يسار مشروع النص البرمجي، انقر على نشر، ونشر جديد.
- بجانب "،اختيار النوع&&، انقر على "تفعيل أنواع النشر" > تطبيق ويب.
- أدخِل المعلومات حول تطبيق الويب في الحقول ضمن "نشر الضبط."
- انقر على نشر.
يمكنك مشاركة عنوان URL لتطبيق الويب مع المستخدمين الذين تريد منهم استخدام تطبيقك، شريطة أن تمنحهم حق الوصول.
اختبار نشر تطبيق ويب
لاختبار النص البرمجي كتطبيق ويب، اتّبع الخطوات التالية:
- في أعلى يسار مشروع النص البرمجي، انقر على نشر > عمليات اختبار النشر.
- بجانب "اختيار النوع"انقر على رمز تفعيل أنواع النشر & gt; تطبيق الويب.
- تحت عنوان URL لتطبيق الويب، انقر على نسخ.
ألصِق عنوان URL في متصفّحك واختَر تطبيق الويب.
ينتهي عنوان URL هذا في
/dev
ولا يمكن الوصول إليه إلا من قِبل المستخدمين الذين لديهم حق التعديل في النص البرمجي. تشغّل هذه النسخة من التطبيق دائمًا أحدث رمز تم حفظه وهو مخصّص فقط للاختبار أثناء التطوير.
الأذونات
تختلف أذونات تطبيق الويب بناءً على الطريقة التي تختارها لتنفيذ التطبيق:
- تنفيذ التطبيق باسمي - في هذه الحالة، يتم تنفيذ النص البرمجي دائمًا أنت، بصفتك مالك النص البرمجي، بغض النظر عن المستخدم الذي يصل إلى تطبيق الويب.
- تنفيذ التطبيق كمستخدم للوصول إلى تطبيق الويب: في هذه الحالة، يتم تشغيل النص البرمجي باسم المستخدم النشط باستخدام تطبيق الويب، ويؤدي ذلك إلى أن يعرض تطبيق الويب البريد الإلكتروني لمالك النص البرمجي عندما يسمح المستخدم بالوصول.
تضمين تطبيق الويب في مواقع Google
يمكنك أيضًا تضمين تطبيقات الويب في كلٍّ من الإصدار الكلاسيكي والإصدار الجديد من مواقع Google.
تضمين تطبيق ويب في الإصدار الجديد من "مواقع Google"
لتضمين تطبيق ويب، يجب نشره أولاً. وستحتاج أيضًا إلى عنوان URL الذي تم نشره من مربّع الحوار Deploy
.
لتضمين تطبيق ويب في صفحة مواقع Google الجديدة، اتّبِع الخطوات التالية:
- افتح صفحة "المواقع الإلكترونية" التي تريد إضافة تطبيق الويب منها.
- اختَر إدراج >؛ تضمين عنوان URL.
- ألصِق عنوان URL لتطبيق الويب، ثم انقر على إضافة.
يظهر تطبيق الويب في إطار في معاينة الصفحة. عند نشر الصفحة، قد يحتاج مشاهدو موقعك الإلكتروني إلى تفويض تطبيق الويب قبل تنفيذه بشكل طبيعي. تقدّم تطبيقات الويب غير المصرّح بها إشعارات بذلك للمستخدم للتفويض.
تضمين تطبيق ويب في الإصدار الكلاسيكي من "مواقع Google"
يمكنك ربط نص برمجي بموقع إلكتروني كلاسيكي على Google بالطريقة نفسها التي يمكنك بها ربط نص برمجي بمستند أو جدول بيانات من Google. لإنشاء نص برمجي مرتبط، انتقِل إلى موقعك الإلكتروني وانقر على رمز الترس ، ثم اختَر إدارة الموقع الإلكتروني. في صفحة "إدارة الموقع الإلكتروني"، انقر على برمجة التطبيقات في شريط التنقّل الأيمن، ثم انقر على الزر إضافة نص برمجي جديد. ويؤدي ذلك إلى فتح نص برمجي جديد في "محرّر برمجة التطبيقات"، حيث يمكنك
ترميز تطبيق الويب ونشره.
يمكنك أيضًا تضمين تطبيق الويب الخاص بك في صفحة. يمكنك ربط تطبيق الويب بالموقع الإلكتروني أو استخدام أي تطبيق ويب لديك عنوان URL الخاص به. لتضمين تطبيق ويب في صفحة مواقع Google، اتبع الخطوات التالية:
- افتح موقعًا حاليًا لديك حق التعديل فيه أو أنشئ موقعًا جديدًا.
- انتقِل إلى صفحة موقعك الإلكتروني التي تريد تضمين تطبيق الويب فيها.
- انقر على رمز التعديل، ثم على إدراج >؛ برمجة تطبيقات Google.
- اختَر النص البرمجي من القائمة التي تمثّل تطبيق الويب. إذا لم يكن تطبيق الويب مرتبطًا بهذا الموقع الإلكتروني، يمكنك لصقه في عنوان URL لتطبيق الويب بدلاً من ذلك.
- انقر على الزر اختيار واختَر الخيارات المطلوبة من مربّع الحوار التالي، ثم انقر على حفظ.
- احفظ التغييرات التي أجريتها على الصفحة، وبعد ذلك من المفترض أن يظهر تطبيق الويب مضمّنًا في صفحة "المواقع الإلكترونية".
تطبيقات الويب وسجلّ المتصفّح
من المفضّل أن يكون لديك تطبيق ويب "برمجة تطبيقات Google" يحاكي تطبيقًا متعدد الصفحات أو تطبيق بواجهة مستخدم ديناميكية يتم التحكّم فيها من خلال معلّمات عناوين URL. لتنفيذ ذلك بشكل جيد، يمكنك تحديد كائن حالة لتمثيل واجهة التطبيق أو الصفحة الخاصة بالتطبيق، وإدخال الحالة في سجلّ المتصفّح أثناء انتقال المستخدم إلى التطبيق. ويمكنك أيضًا الاستماع إلى أحداث السجلّ بحيث يعرض تطبيق الويب واجهة المستخدم الصحيحة عندما يتنقل المستخدم بين الصفحات باستخدام زرّ المتصفح. ومن خلال طلب البحث عن معلمات عناوين URL في وقت التحميل، يمكنك جعل تطبيقك ينشئ واجهة مستخدم ديناميكيًا استنادًا إلى هذه المعلمات، ما يسمح للمستخدم ببدء تشغيل التطبيق في حالة معينة.
توفّر "برمجة التطبيقات" واجهات برمجة تطبيقات JavaScript غير متزامنة من جهة العميل للمساعدة في إنشاء تطبيقات الويب المرتبطة بسجلّ المتصفّح:
google.script.history
تقدّم طرقًا للسماح بالاستجابة الديناميكية للتغييرات في سجلّ المتصفّح. ويتضمّن ذلك إرسال حالات (كائنات بسيطة يمكنك تحديدها) إلى سجلّ المتصفّح واستبدال الحالة العليا في قائمة السجلّات وضبط دالة معاودة الاتصال للرد على تغييرات السجلّ.يوفّر
google.script.url
وسائل لاسترداد معلمات عنوان URL للصفحة الحالية وجزء عنوان URL، إذا كانا متوفّرَين.
ولا تتوفّر واجهات برمجة تطبيقات السجلّ هذه إلا لتطبيقات الويب. وهي غير متوافقة مع الأشرطة الجانبية أو مربعات الحوار أو الإضافات. لا يُنصح أيضًا باستخدام هذه الوظيفة في تطبيقات الويب المضمّنة في مواقع Google.