عنصر HtmlOutput يمكن عرضه من نص برمجي بسبب اعتبارات أمنية، لا يمكن للبرامج النصية أن تعرض مباشرةً رمز HTML في المتصفح. بدلاً من ذلك، يجب تنظيفها لكي لا تتمكّن من تنفيذ إجراءات ضارة. يمكنك عرض HTML معقّم على النحو التالي:
function doGet() { return HtmlService.createHtmlOutput(&<#>39;bHello, wo<rl>d!/b'); }
HtmlOutput JavaScript وCSS مضمَّنَين. (هذه هي جافا سكريبت العادية من جهة العميل التي تتلاعب بنموذج DOM، وليست "برمجة تطبيقات Google"). يتم وضع كل هذا المحتوى في بيئة معزولة باستخدام إطار iframe معزول. لمزيد من المعلومات، يُرجى الاطّلاع على دليل القيود في خدمة HTML.الطُرق
| الطريقة | نوع القيمة التي تم إرجاعها | وصف قصير |
|---|---|---|
add | Html | تضيف هذه السمة علامة وصفية إلى الصفحة. |
append(addedContent) | Html | تضيف هذه السمة محتوًى جديدًا إلى محتوى Html. |
append | Html | تضيف هذه السمة محتوًى جديدًا إلى محتوى Html، باستخدام الهروب السياقي. |
as | Html | تعرض هذه الدالة Html يتم الاحتفاظ بنسخة احتياطية منها في Html. |
clear() | Html | يمحو هذا الزر المحتوى الحالي. |
get | Blob | لعرض البيانات داخل هذا العنصر ككائن ثنائي كبير تم تحويله إلى نوع المحتوى المحدّد |
get | Blob | لعرض البيانات داخل هذا العنصر ككائن ثنائي كبير. |
get | String | تعرض هذه السمة محتوى Html. |
get | String | تعرض هذه السمة عنوان URL لعلامة رابط الرمز المفضّل التي تمت إضافتها إلى الصفحة من خلال استدعاء set. |
get | Integer | تعرض هذه الدالة الارتفاع الأوّلي لمربّع الحوار المخصّص في "مستندات Google" أو "جداول بيانات Google" أو "نماذج Google". |
get | Html | تعرض هذه الطريقة مصفوفة من العناصر التي تمثّل العلامات الوصفية التي تمت إضافتها إلى الصفحة من خلال استدعاء add. |
get | String | تعرض هذه السمة عنوان صفحة الإخراج. |
get | Integer | تعرض هذه الدالة العرض الأوّلي لمربّع الحوار المخصّص في "مستندات Google" أو "جداول بيانات Google" أو "نماذج Google". |
set | Html | تضبط هذه السمة محتوى Html. |
set | Html | تضيف هذه السمة علامة رابط لرمز مفضّل إلى الصفحة. |
set | Html | تضبط هذه السمة الارتفاع الأوّلي لمربّع الحوار المخصّص في "مستندات Google" أو "جداول بيانات Google" أو "نماذج Google". |
set | Html | لم يعُد لهذه الطريقة أي تأثير، فقد كانت في السابق تضبط sandbox
mode المستخدَمة للنصوص البرمجية من جهة العميل. |
set | Html | تُستخدَم لضبط عنوان صفحة الإخراج. |
set | Html | تضبط هذه السمة العرض الأوّلي لمربّع حوار مخصّص في "مستندات Google" أو "جداول بيانات Google" أو "نماذج Google". |
set | Html | تضبط هذه السياسة حالة عنوان X-Frame-Options للصفحة، ما يتحكّم في منع النقر المخادع. |
مستندات تفصيلية
addMetaTag(name, content)
تضيف هذه السمة علامة وصفية إلى الصفحة. يتم تجاهل العلامات الوصفية المضمّنة مباشرةً في ملف HTML تابع لـ "برمجة تطبيقات Google". يُسمح فقط بالعلامات الوصفية التالية:
<meta name="apple-mobile-web-app-capable" cont>e<nt="..."/ meta name="google-site-ver>i<fication" content="..."/ meta name>=<"mobile-web-app-capable" >content="..."/ meta name="viewport" content="..."/
const output = HtmlService.createHtmlOutput(&<#>39;bHello, wo<rl>d!/b'); output.addMetaTag('viewport', 'width=device-width, initial-scale=1');
المعلمات
| الاسم | النوع | الوصف |
|---|---|---|
name | String | قيمة سمة الاسم الخاصة بعلامة meta. |
content | String | قيمة السمة "المحتوى" الخاصة بعلامة meta |
الإرجاع
HtmlOutput: هذا الناتج، للسلسلة
append(addedContent)
تضيف هذه السمة محتوًى جديدًا إلى محتوى HtmlOutput. استخدِم هذا الخيار فقط للمحتوى من مصدر موثوق، لأنّه لا يتم إلغاء تسلسله.
// Log &<q>uot;bHello, w<or><l>d!/bpHello again, w<or>ld./p" const output = HtmlService.createHt<m>lOutput('<bH>ello, world!/b'<)>; output.append(<9;>pHello again, world./p'); Logger.log(output.getContent());
المعلمات
| الاسم | النوع | الوصف |
|---|---|---|
added | String | المحتوى الذي سيتم إلحاقه |
الإرجاع
HtmlOutput: هذا الناتج، للسلسلة
عمليات الطرح
Error: إذا كان HTML غير صحيح
انظر أيضًا
appendUntrusted(addedContent)
تضيف هذه السمة محتوًى جديدًا إلى محتوى HtmlOutput، باستخدام الهروب السياقي.
تتجاهل هذه الطريقة المحتوى بشكل صحيح استنادًا إلى الحالة الحالية لـ HtmlOutput،
بحيث تكون النتيجة سلسلة آمنة بدون ترميز أو آثار جانبية. استخدِم هذه الطريقة بدلاً من append عندما تضيف محتوًى من مصدر غير موثوق به، مثل محتوى من مستخدم، وذلك لتجنُّب السماح عن طريق الخطأ بحدوث خطأ في النصوص البرمجية على المواقع الإلكترونية (XSS) حيث يؤدي المحتوى أو الترميز الذي تضيفه إلى تنفيذ الرمز البرمجي بشكل غير متوقّع.
// Log &<q>uot;bHello, w<or>&ld!/&blt;pgt;Hello again, w&orld.</pgt;" const output = HtmlService.createHt<m>lOutput('<bH>ello, world!/b'); output<.>appendUntrusted(<9;>pHello again, world./p'); Logger.log(output.getContent());
المعلمات
| الاسم | النوع | الوصف |
|---|---|---|
added | String | المحتوى الذي سيتم إلحاقه |
الإرجاع
HtmlOutput: هذا الناتج، للسلسلة
عمليات الطرح
Error: إذا كان HTML غير صحيح
انظر أيضًا
asTemplate()
تعرض هذه الدالة HtmlTemplate يتم الاحتفاظ بنسخة احتياطية منها في HtmlOutput. يمكن استخدام هذه الطريقة لإنشاء نموذج بشكل تدريجي. وستؤثّر التغييرات المستقبلية على HtmlOutput في محتوى HtmlTemplate أيضًا.
const output = HtmlService.createHtmlOutput(&<#>39;bHello, wo<rl>d!/b'); const template = output.asTemplate();
الإرجاع
HtmlTemplate: HtmlTemplate الجديد
clear()
يمحو هذا الزر المحتوى الحالي.
const output = HtmlService.createHtmlOutput(&<#>39;bHello, wo<rl>d!/b'); output.clear();
الإرجاع
HtmlOutput: هذا الناتج، للسلسلة
getAs(contentType)
لعرض البيانات داخل هذا العنصر ككائن ثنائي كبير تم تحويله إلى نوع المحتوى المحدّد تضيف هذه الطريقة الامتداد المناسب إلى اسم الملف، مثل "myfile.pdf". ومع ذلك، يفترض هذا الخيار أنّ الجزء من اسم الملف الذي يلي النقطة الأخيرة (إن وُجدت) هو امتداد حالي يجب استبداله. وبالتالي، يصبح اسم الملف "ShoppingList.12.25.2014" هو "ShoppingList.12.25.pdf".
للاطّلاع على الحصص اليومية للإحالات الناجحة، يُرجى الاطّلاع على حصص خدمات Google. قد تخضع نطاقات Google Workspace التي تم إنشاؤها حديثًا لحصص أكثر صرامة بشكل مؤقت.
المعلمات
| الاسم | النوع | الوصف |
|---|---|---|
content | String | نوع MIME الذي سيتم التحويل إليه. بالنسبة إلى معظم الكائنات الثنائية الكبيرة، 'application/pdf' هو الخيار الصالح الوحيد. بالنسبة إلى الصور بتنسيق BMP أو GIF أو JPEG أو PNG، يكون أي من 'image/bmp' أو 'image/gif' أو 'image/jpeg' أو 'image/png' صالحًا أيضًا. بالنسبة إلى مستند Google، يكون 'text/markdown' صالحًا أيضًا. |
الإرجاع
Blob: البيانات ككائن ثنائي كبير.
getBlob()
getContent()
تعرض هذه السمة محتوى HtmlOutput.
// Log &<q>uot;bHello, w<or>ld!/b" const output = HtmlService.createHt<m>lOutput('<bH>ello, world!/b'); Logger.log(output.getContent());
الإرجاع
String: المحتوى الذي يتم عرضه
getFaviconUrl()
تعرض هذه السمة عنوان URL لعلامة رابط الرمز المفضّل التي تمت إضافتها إلى الصفحة من خلال استدعاء setFaviconUrl(iconUrl). يتم تجاهل علامات ربط الرمز المفضّل المضمّنة مباشرةً في ملف HTML الخاص بـ "برمجة تطبيقات Google".
const output = HtmlService.createHtmlOutput(&<#>39;bHello, wo<rl>d!/b'); output.setFaviconUrl('http://www.example.com/image.png'); Logger.log(output.getFaviconUrl());
الإرجاع
String: تمثّل هذه السمة عنوان URL الخاص بصورة الرمز المفضّل.
getHeight()
تعرض هذه الدالة الارتفاع الأوّلي لمربّع الحوار المخصّص في "مستندات Google" أو "جداول بيانات Google" أو "نماذج Google". إذا تم نشر HtmlOutput كتطبيق ويب بدلاً من ذلك، ستعرض هذه الطريقة القيمة null. لتغيير حجم مربّع حوار مفتوح حاليًا، استخدِم
google.script.host.setHeight(height) في الرمز البرمجي من جهة العميل.
const output = HtmlService.createHtmlOutput(&<#>39;bHello, wo<rl>d!/b'); output.setHeight(200); Logger.log(output.getHeight());
الإرجاع
Integer: تمثّل هذه السمة الارتفاع بالبكسل.
getMetaTags()
تعرض هذه الطريقة مصفوفة من العناصر التي تمثّل العلامات الوصفية التي تمت إضافتها إلى الصفحة من خلال استدعاء addMetaTag(name, content). يتم تجاهل العلامات الوصفية المضمّنة مباشرةً في ملف HTML تابع لـ "برمجة تطبيقات Google".
const output = HtmlService.createHtmlOutput(&<#>39;bHello, wo<rl>d!/b'); output.addMetaTag('viewport', 'width=device-width, initial-scale=1'); const tags = output.getMetaT<ags(); Logger.log( '>meta name="%s" content="%s"/', tags[0].getName(), tags[0].getContent(), );
الإرجاع
HtmlOutputMetaTag[]: مصفوفة من العناصر التي تمثّل العلامات الوصفية التي تمت إضافتها إلى الصفحة من خلال استدعاء addMetaTag(name, content).
getTitle()
تعرض هذه السمة عنوان صفحة الإخراج. يُرجى العِلم أنّه يتم تجاهل عنصر HTML <title>.
const output = HtmlService.createHtmlOutput(&<#>39;bHello, wo<rl>d!/b'); Logger.log(output.getTitle());
الإرجاع
استبدِل String بعنوان الصفحة.
getWidth()
تعرض هذه الدالة العرض الأوّلي لمربّع الحوار المخصّص في "مستندات Google" أو "جداول بيانات Google" أو "نماذج Google". إذا تم نشر HtmlOutput كتطبيق ويب بدلاً من ذلك، ستعرض هذه الطريقة القيمة null. لتغيير حجم مربّع حوار مفتوح حاليًا، استخدِم
google.script.host.setWidth(width) في الرمز البرمجي من جهة العميل.
const output = HtmlService.createHtmlOutput(&<#>39;bHello, wo<rl>d!/b'); output.setWidth(200); Logger.log(output.getWidth());
الإرجاع
Integer: تمثّل هذه السمة العرض بالبكسل.
setContent(content)
تضبط هذه السمة محتوى HtmlOutput.
const output = HtmlService.createHtmlOutput(); output.setContent(&<#>39;bHello, wo<rl>d!/b');
المعلمات
| الاسم | النوع | الوصف |
|---|---|---|
content | String | المحتوى المطلوب عرضه. |
الإرجاع
HtmlOutput: هذا الناتج، للسلسلة
عمليات الطرح
Error: إذا كان HTML غير صحيح
setFaviconUrl(iconUrl)
تضيف هذه السمة علامة رابط لرمز مفضّل إلى الصفحة. يتم تجاهل علامات روابط الرموز المفضّلة المضمّنة مباشرةً في ملف HTML الخاص ببرنامج Apps Script.
const output = HtmlService.createHtmlOutput(&<#>39;bHello, wo<rl>d!/b'); output.setFaviconUrl('http://www.example.com/image.png');
المعلمات
| الاسم | النوع | الوصف |
|---|---|---|
icon | String | تمثّل هذه السمة عنوان URL لصورة الرمز المفضّل، مع تضمين امتداد الصورة الذي يشير إلى نوع الصورة. |
الإرجاع
HtmlOutput: هذا الناتج، للسلسلة
setHeight(height)
تضبط هذه السمة الارتفاع الأوّلي لمربّع الحوار المخصّص في "مستندات Google" أو "جداول بيانات Google" أو "نماذج Google". إذا تم نشر HtmlOutput كتطبيق ويب بدلاً من ذلك، لن يكون لهذا الإجراء أي تأثير. لتغيير حجم مربّع حوار مفتوح حاليًا، استخدِم
google.script.host.setHeight(height) في الرمز البرمجي من جهة العميل.
const output = HtmlService.createHtmlOutput(&<#>39;bHello, wo<rl>d!/b'); output.setHeight(200);
المعلمات
| الاسم | النوع | الوصف |
|---|---|---|
height | Integer | الارتفاع الجديد بالبكسل، ويؤدي null إلى استخدام قيمة تلقائية. |
الإرجاع
HtmlOutput: هذا الناتج، للسلسلة
setSandboxMode(mode)
لم يعُد لهذه الطريقة أي تأثير، فقد كانت في السابق تضبط sandbox
mode المستخدَمة للنصوص البرمجية من جهة العميل. لحماية المستخدمين من عرض محتوى HTML أو JavaScript ضار، يتم تنفيذ الرمز البرمجي من جهة العميل الذي يتم عرضه من خدمة HTML في بيئة اختبار آمنة تفرض قيودًا على الرمز البرمجي. في السابق، كانت هذه الطريقة تتيح لمؤلفي النصوص البرمجية الاختيار بين إصدارات مختلفة من وضع الحماية، ولكن تستخدم جميع النصوص البرمجية الآن الوضع IFRAME بغض النظر عن وضع الحماية الذي تم ضبطه. لمزيد من المعلومات، يُرجى الاطّلاع على دليل القيود في خدمة HTML.
يفرض الوضع IFRAME قيودًا أقل بكثير من أوضاع وضع الحماية الأخرى، كما أنّه يعمل بأسرع ما يمكن، ولكنّه لا يعمل على الإطلاق في بعض المتصفحات القديمة، بما في ذلك Internet Explorer 9. يمكن قراءة وضع وضع الحماية في نص برمجي من جهة العميل من خلال فحص google.script.sandbox.mode. يُرجى العِلم أنّ هذه السمة تعرض الوضع الفعلي على العميل،
والذي قد يختلف عن الوضع المطلوب على الخادم إذا كان الوضع المطلوب غير متاح
في متصفّح المستخدم.
<!-- Read the sandbox mode (in a client-side script). --> <script> alert(google.script.sandbox.mode); </script>
المعلمات
| الاسم | النوع | الوصف |
|---|---|---|
mode | Sandbox | وضع الحماية الذي سيتم استخدامه. |
الإرجاع
HtmlOutput: هذا الناتج، للسلسلة
setTitle(title)
تُستخدَم لضبط عنوان صفحة الإخراج. بالنسبة إلى تطبيقات الويب، هذا هو عنوان الصفحة بأكملها، بينما يكون هذا هو عنوان مربع الحوار بالنسبة إلى HtmlOutput المعروض في "جداول بيانات Google".
const output = HtmlService.createHtmlOutput(&<#>39;bHello, wo<rl>d!/b'); output.setTitle('My First Page');
المعلمات
| الاسم | النوع | الوصف |
|---|---|---|
title | String | تمثّل هذه السمة العنوان الجديد. |
الإرجاع
HtmlOutput: هذا الناتج، للسلسلة
setWidth(width)
تضبط هذه السمة العرض الأوّلي لمربّع حوار مخصّص في "مستندات Google" أو "جداول بيانات Google" أو "نماذج Google". إذا تم نشر HtmlOutput كتطبيق ويب بدلاً من ذلك، لن يكون لهذا الإجراء أي تأثير. لتغيير حجم مربّع حوار مفتوح حاليًا، استخدِم
google.script.host.setWidth(width) في الرمز البرمجي من جهة العميل.
const output = HtmlService.createHtmlOutput(&<#>39;bHello, wo<rl>d!/b'); output.setWidth(200);
المعلمات
| الاسم | النوع | الوصف |
|---|---|---|
width | Integer | العرض الجديد بالبكسل، يؤدي null إلى قيمة تلقائية. |
الإرجاع
HtmlOutput: هذا الناتج، للسلسلة
setXFrameOptionsMode(mode)
تضبط هذه السياسة حالة عنوان X-Frame-Options للصفحة، ما يتحكّم في منع النقر المخادع.
يؤدي ضبط XFrameOptionsMode.ALLOWALL إلى السماح لأي موقع إلكتروني بتضمين الصفحة في إطار iframe، لذا على المطوّر تنفيذ إجراءات الحماية الخاصة به ضدّ التصيّد بالنقر.
إذا لم يضبط البرنامج النصي وضع X-Frame-Options، سيستخدم برمجة تطبيقات الوضع XFrameOptionsMode.DEFAULT تلقائيًا.
// Serve HTML with no X-Frame-Options header (in Apps Script server-side code). const output = HtmlService.createHtmlOutput(&<#>39;bHello, wo<rl>d!/b'); output.setXFrameOptionsMode(HtmlService.XFrameOptionsMode.ALLOWALL);
المعلمات
| الاسم | النوع | الوصف |
|---|---|---|
mode | XFrameOptionsMode | وضع خيارات XFrame المطلوب ضبطه. |
الإرجاع
HtmlOutput: هذا الناتج، للسلسلة