Class HtmlOutput

Htmlإخراج

عنصر HtmlOutput يمكن عرضه من نص برمجي. لأسباب تتعلق بالأمان، لا يمكن للنصوص البرمجية عرض HTML مباشرةً في المتصفح. وبدلاً من ذلك، يجب أن يتم تطهيرها حتى لا يمكنها تنفيذ إجراءات ضارة. يمكنك عرض HTML تم تصحيحه كما يلي:

function doGet() {
  return HtmlService.createHtmlOutput('<b>Hello, world!</b>');
}
يمكن أن يحتوي الرمز في HtmlOutput على JavaScript وCSS المضمّنة. (هذا هو JavaScript عادي من جهة العميل يتلاعب بـ DOM، وليس "برمجة تطبيقات Google"). تتم حماية كل هذا المحتوى باستخدام وضع الحماية. ولمزيد من المعلومات، يُرجى الاطّلاع على دليل القيود في خدمة HTML.

الطُرق

الطريقةنوع الإرجاعوصف قصير
addMetaTag(name, content)HtmlOutputإضافة علامة وصفية إلى الصفحة
append(addedContent)HtmlOutputلإلحاق محتوى جديد بمحتوى HtmlOutput
appendUntrusted(addedContent)HtmlOutputلإلحاق محتوى جديد بمحتوى HtmlOutput، باستخدام ميزة "الهروب من السياق".
asTemplate()HtmlTemplateعرض HtmlTemplate تدعمه هذه HtmlOutput.
clear()HtmlOutputيؤدي إلى محو المحتوى الحالي.
getAs(contentType)Blobعرض البيانات داخل هذا العنصر ككائن ثنائي كبير (blob) تم تحويله إلى نوع المحتوى المحدد.
getBlob()Blobعرض البيانات داخل هذا الكائن كائن ثنائي كبير.
getContent()Stringللحصول على محتوى HtmlOutput.
getFaviconUrl()Stringللحصول على عنوان URL لعلامة رابط مفضّل تمت إضافتها إلى الصفحة من خلال استدعاء setFaviconUrl(iconUrl).
getHeight()Integerيحصل على الارتفاع المبدئي لـ مربّع الحوار المخصّص في "مستندات Google" أو "جداول بيانات Google" أو "نماذج Google".
getMetaTags()HtmlOutputMetaTag[]للحصول على مجموعة من العناصر التي تمثّل العلامات الوصفية التي تمت إضافتها إلى الصفحة من خلال استدعاء addMetaTag(name, content).
getTitle()Stringيحصل على عنوان صفحة الناتج.
getWidth()Integerيحصل على العرض الأولي لـ مربع الحوار المخصص في Google مستندات Google أو جداول بيانات Google أو نماذج Google.
setContent(content)HtmlOutputلضبط محتوى HtmlOutput.
setFaviconUrl(iconUrl)HtmlOutputإضافة علامة رابط إلى رمز مفضّل إلى الصفحة
setHeight(height)HtmlOutputيحدد الارتفاع المبدئي لـ مربع الحوار المخصص في Google مستندات Google أو جداول بيانات Google أو نماذج Google.
setSandboxMode(mode)HtmlOutputليس لهذه الطريقة أي تأثير الآن - في السابق تم ضبط sandbox mode المستخدَمة للنصوص البرمجية من جهة العميل.
setTitle(title)HtmlOutputتُحدّد هذه السمة عنوان صفحة الناتج.
setWidth(width)HtmlOutputيضبط العرض الأولي لـ مربّع حوار مخصّص في "مستندات Google" أو "جداول بيانات Google" أو "نماذج Google".
setXFrameOptionsMode(mode)HtmlOutputتضبط حالة عنوان X-Frame-Options في"الصفحة"، والتي تتحكم في منع النقر.

المستندات التفصيلية

addMetaTag(name, content)

إضافة علامة وصفية إلى الصفحة ويتم تجاهل العلامات الوصفية المضمَّنة مباشرةً في ملف HTML لبرمجة التطبيقات. يُسمح فقط باستخدام العلامات الوصفية التالية:

<meta name="apple-mobile-web-app-capable" content="..."/>
<meta name="google-site-verification" content="..."/>
<meta name="mobile-web-app-capable" content="..."/>
<meta name="viewport" content="..."/>
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>');
output.addMetaTag('viewport', 'width=device-width, initial-scale=1');

المعلّمات

الاسمالنوعالوصف
nameStringقيمة سمة الاسم الوصفية للعلامة.
contentStringقيمة سمة محتوى العلامة الوصفية.

تذكرة ذهاب وعودة

HtmlOutput — هذا الإخراج للسلاسل.


append(addedContent)

لإلحاق محتوى جديد بمحتوى HtmlOutput استخدِم هذا الخيار للمحتوى من مصدر موثوق به فقط، لأنه لا يتم تخطيه.

// Log "<b>Hello, world!</b><p>Hello again, world.</p>"
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>');
output.append('<p>Hello again, world.</p>');
Logger.log(output.getContent());

المعلّمات

الاسمالنوعالوصف
addedContentStringالمحتوى المطلوب إلحاقه

تذكرة ذهاب وعودة

HtmlOutput — هذا الإخراج للسلاسل.

طرح

Error — إذا كان HTML مكتوبًا بشكلٍ غير صحيح

راجع أيضًا


appendUntrusted(addedContent)

لإلحاق محتوى جديد بمحتوى HtmlOutput، باستخدام ميزة "الهروب من السياق".

تلغي هذه الطريقة المحتوى بشكلٍ صحيح استنادًا إلى الحالة الحالية لـ HtmlOutput، بحيث تكون النتيجة سلسلة آمنة بدون تأثير أي ترميز أو جانب. استخدِم هذا بدلاً من استخدام ميزة "الإضافة" عند إضافة محتوى من مصدر غير موثوق به، مثل الإضافة من مستخدم، لتجنُّب السماح بحدوث خطأ عن طريق الخطأ في النصوص البرمجية للمواقع الإلكترونية (XSS) حيث يؤدي المحتوى أو الترميز الذي تُلحِقه إلى تنفيذ رمز غير متوقّع.

// Log "<b>Hello, world!</b>&lt;p&gt;Hello again, world.&lt;/p&gt;"
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>');
output.appendUntrusted('<p>Hello again, world.</p>');
Logger.log(output.getContent());

المعلّمات

الاسمالنوعالوصف
addedContentStringالمحتوى المطلوب إلحاقه

تذكرة ذهاب وعودة

HtmlOutput — هذا الإخراج للسلاسل.

طرح

Error: إذا كان مصدر HTML مكتوبًا بشكلٍ غير صحيح

راجع أيضًا


asTemplate()

عرض HtmlTemplate تدعمه هذه HtmlOutput. ويمكن استخدام هذه الطريقة لإنشاء نموذج بشكل تدريجي. التغييرات المستقبلية على HtmlOutput تؤثر في محتوى HtmlTemplate أيضًا.

var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>');
var template = output.asTemplate();

تذكرة ذهاب وعودة

HtmlTemplate — الجديد HtmlTemplate.


clear()

يؤدي إلى محو المحتوى الحالي.

var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>');
output.clear();

تذكرة ذهاب وعودة

HtmlOutput — هذا الإخراج للسلاسل.


getAs(contentType)

عرض البيانات داخل هذا العنصر ككائن ثنائي كبير (blob) تم تحويله إلى نوع المحتوى المحدد. تضيف هذه الطريقة الامتداد المناسب إلى اسم الملف، على سبيل المثال، "myfile.pdf". ومع ذلك، يفترض أنّ الجزء من اسم الملف الذي يتبع النقطة الأخيرة (إن وجد) هو إضافة حالية يجب استبدالها. نتيجةً لذلك، يصبح "ShoppingList.12.25.2014" "ShoppingList.12.25.pdf".

لعرض الحصص اليومية للإحالات الناجحة، يُرجى الاطّلاع على حصص خدمات Google. قد تخضع نطاقات Google Workspace التي تم إنشاؤها حديثًا إلى عروض أسعار أكثر صرامة.

المعلّمات

الاسمالنوعالوصف
contentTypeStringنوع MIME المطلوب التحويل إليه. وبالنسبة إلى معظم الكائنات الثنائية الكبيرة، 'application/pdf' هو الخيار الوحيد الصالح. بالنسبة إلى الصور بتنسيق BMP أو GIF أو JPEG أو PNG، أي من القيم 'image/bmp' أو 'image/gif' أو 'image/jpeg' أو 'image/png' صالح أيضًا.

تذكرة ذهاب وعودة

Blob — البيانات كائن ثنائي كبير.


getBlob()

عرض البيانات داخل هذا الكائن كائن ثنائي كبير.

تذكرة ذهاب وعودة

Blob — البيانات كائن ثنائي كبير.


getContent()

للحصول على محتوى HtmlOutput.

// Log "<b>Hello, world!</b>"
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>');
Logger.log(output.getContent());

تذكرة ذهاب وعودة

String — المحتوى المعروض.


getFaviconUrl()

للحصول على عنوان URL لعلامة رابط مفضّل تمت إضافتها إلى الصفحة من خلال استدعاء setFaviconUrl(iconUrl). يتم تجاهل علامات رابط الرمز المفضّل المضمّنة مباشرةً في ملف HTML لبرمجة التطبيقات.

var output = HtmlService.createHtmlOutput('<b>Hello, world!</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) في الرمز من جهة العميل.

var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>');
output.setHeight(200);
Logger.log(output.getHeight());

تذكرة ذهاب وعودة

Integer — الارتفاع بالبكسل.


getMetaTags()

للحصول على مجموعة من العناصر التي تمثّل العلامات الوصفية التي تمت إضافتها إلى الصفحة من خلال استدعاء addMetaTag(name, content). ويتم تجاهل العلامات الوصفية المضمَّنة مباشرةً في ملف HTML لبرمجة التطبيقات.

var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>');
output.addMetaTag('viewport', 'width=device-width, initial-scale=1');

var tags = output.getMetaTags();
Logger.log('<meta name="%s" content="%s"/>', tags[0].getName(), tags[0].getContent());

تذكرة ذهاب وعودة

HtmlOutputMetaTag[]: مصفوفة من العناصر التي تمثّل العلامات الوصفية التي تمت إضافتها إلى الصفحة من خلال استدعاء addMetaTag(name, content)


getTitle()

يحصل على عنوان صفحة الناتج. لاحظ أنه يتم تجاهل عنصر HTML <title> HTML.

var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>');
Logger.log(output.getTitle());

تذكرة ذهاب وعودة

String — عنوان الصفحة.


getWidth()

يحصل على العرض الأولي لـ مربع الحوار المخصص في Google مستندات Google أو جداول بيانات Google أو نماذج Google. إذا تم نشر HtmlOutput كتطبيق ويب بدلاً من ذلك، ستعرض هذه الطريقة null. لتغيير حجم مربّع حوار مفتوح من قبل، يمكنك استدعاء الإجراء google.script.host.setWidth(width) في الرمز من جهة العميل.

var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>');
output.setWidth(200);
Logger.log(output.getWidth());

تذكرة ذهاب وعودة

Integer — العرض بالبكسل.


setContent(content)

لضبط محتوى HtmlOutput.

var output = HtmlService.createHtmlOutput();
output.setContent('<b>Hello, world!</b>');

المعلّمات

الاسمالنوعالوصف
contentStringالمحتوى المراد عرضه.

تذكرة ذهاب وعودة

HtmlOutput — هذا الإخراج للسلاسل.

طرح

Error — إذا كان HTML مكتوبًا بشكلٍ غير صحيح


setFaviconUrl(iconUrl)

إضافة علامة رابط إلى رمز مفضّل إلى الصفحة يتم تجاهل علامات رابط Favicon مباشرةً في ملف HTML لبرمجة التطبيقات.

var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>');
output.setFaviconUrl('http://www.example.com/image.png');

المعلّمات

الاسمالنوعالوصف
iconUrlStringعنوان URL لصورة الرمز المفضّل، مع إضافة الصورة التي تشير إلى نوع الصورة.

تذكرة ذهاب وعودة

HtmlOutput — هذا الإخراج للسلاسل.


setHeight(height)

يحدد الارتفاع المبدئي لـ مربع الحوار المخصص في Google مستندات Google أو جداول بيانات Google أو نماذج Google. إذا تم نشر HtmlOutput كتطبيق ويب بدلاً من ذلك، لن يكون لهذه الطريقة أي تأثير. لتغيير حجم مربّع حوار مفتوح من قبل، يمكنك استدعاء الإجراء google.script.host.setHeight(height) في الرمز من جهة العميل.

var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>');
output.setHeight(200);

المعلّمات

الاسمالنوعالوصف
heightIntegerالارتفاع الجديد بالبكسل، ويؤدي 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>

المعلّمات

الاسمالنوعالوصف
modeSandboxModeوضع استخدام وضع الحماية.

تذكرة ذهاب وعودة

HtmlOutput — هذا الإخراج للسلاسل.


setTitle(title)

تُحدّد هذه السمة عنوان صفحة الناتج. وبالنسبة إلى تطبيقات الويب، هذا هو عنوان الصفحة بأكمله، وبالنسبة إلى HtmlOutput المعروضة في"جداول بيانات Google"، يكون هذا هو عنوان مربع الحوار.

var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>');
output.setTitle('My First Page');

المعلّمات

الاسمالنوعالوصف
titleStringتمثّل هذه الخاصية العنوان الجديد.

تذكرة ذهاب وعودة

HtmlOutput — هذا الإخراج للسلاسل.


setWidth(width)

يضبط العرض الأولي لـ مربّع حوار مخصّص في "مستندات Google" أو "جداول بيانات Google" أو "نماذج Google". إذا تم نشر HtmlOutput كتطبيق ويب بدلاً من ذلك، لن يكون لهذه الطريقة أي تأثير. لتغيير حجم مربّع حوار مفتوح من قبل، يمكنك استدعاء الإجراء google.script.host.setWidth(width) في الرمز من جهة العميل.

var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>');
output.setWidth(200);

المعلّمات

الاسمالنوعالوصف
widthIntegerالعرض الجديد بالبكسل، يؤدي 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).
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>');
output.setXFrameOptionsMode(HtmlService.XFrameOptionsMode.ALLOWALL);

المعلّمات

الاسمالنوعالوصف
modeXFrameOptionsModeوضع خيارات XFrame المطلوب ضبطه.

تذكرة ذهاب وعودة

HtmlOutput — هذا الإخراج للسلاسل.