تمثّل هذه السمة عنصر HtmlOutput
يمكن عرضه من نص برمجي. لأسباب تتعلق بالأمان، لا يمكن للنصوص البرمجية عرض HTML إلى المتصفح مباشرةً. وبدلاً من ذلك، يجب تعقيمها حتى لا تتمكن من تنفيذ إجراءات ضارة. يمكنك عرض رمز HTML الذي تم تصحيحه على النحو التالي:
function doGet() { return HtmlService.createHtmlOutput('<b>Hello, world!</b>'); }يمكن أن يتضمّن الرمز في
HtmlOutput
لغة JavaScript وCSS مضمّنة. (وهو رمز JavaScript عادي من جهة العميل يعالج نموذج العناصر في المستند (DOM) وليس "برمجة تطبيقات"). كل هذا المحتوى في وضع الحماية باستخدام وضع الحماية باستخدام iframe. لمزيد من المعلومات، راجِع دليل القيود في خدمة HTML.الطُرق
الطريقة | نوع القيمة التي يتم إرجاعها | وصف قصير |
---|---|---|
addMetaTag(name, content) | HtmlOutput | إضافة علامة وصفية إلى الصفحة |
append(addedContent) | HtmlOutput | لإلحاق محتوى جديد بمحتوى HtmlOutput هذا. |
appendUntrusted(addedContent) | HtmlOutput | لإلحاق محتوى جديد بمحتوى HtmlOutput هذا، باستخدام ميزة الإلغاء السياقي. |
asTemplate() | HtmlTemplate | تعرض HtmlTemplate بدعم من HtmlOutput . |
clear() | HtmlOutput | يؤدي ذلك إلى محو المحتوى الحالي. |
getAs(contentType) | Blob | عرض البيانات داخل هذا الكائن على شكل كائن ثنائي كبير يتم تحويله إلى نوع المحتوى المحدّد. |
getBlob() | Blob | عرض البيانات داخل هذا الكائن على هيئة كائن ثنائي كبير (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" |
setContent(content) | HtmlOutput | تُستخدم هذه السياسة لضبط محتوى HtmlOutput . |
setFaviconUrl(iconUrl) | HtmlOutput | لإضافة علامة رابط لرمز مفضّل إلى الصفحة. |
setHeight(height) | HtmlOutput | يضبط الارتفاع الأولي لمربّع الحوار المخصّص في "مستندات 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');
المَعلمات
الاسم | Type | الوصف |
---|---|---|
name | String | قيمة سمة اسم العلامة الوصفية. |
content | String | قيمة سمة content للعلامة الوصفية. |
استرجاع الكرة
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());
المَعلمات
الاسم | Type | الوصف |
---|---|---|
addedContent | String | المحتوى المطلوب إلحاقه |
استرجاع الكرة
HtmlOutput
: هذا الناتج للتسلسل.
الرميات
Error
: في حال كان تنسيق HTML مكتوبًا بشكلٍ غير صحيح
يمكن أيضًا مراجعة
appendUntrusted(addedContent)
لإلحاق محتوى جديد بمحتوى HtmlOutput
هذا، باستخدام ميزة الإلغاء السياقي.
وتعمل هذه الطريقة على تجنّب المحتوى بشكلٍ سليم استنادًا إلى حالة HtmlOutput
الحالية،
بحيث تكون النتيجة سلسلة آمنة بدون ترميز أو تأثير جانبي. استخدِم هذا بدلاً من استخدام الإضافة كلّما أضفت محتوى من مصدر غير موثوق به، مثل محتوى من مستخدم، لتجنُّب السماح عن طريق الخطأ بالخطأ البرمجي على جميع المواقع الإلكترونية (XSS) حيث يتسبّب المحتوى أو الترميز الذي تُلحِقه في تنفيذ رمز غير متوقّع.
// Log "<b>Hello, world!</b><p>Hello again, world.</p>" var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); output.appendUntrusted('<p>Hello again, world.</p>'); Logger.log(output.getContent());
المَعلمات
الاسم | Type | الوصف |
---|---|---|
addedContent | String | المحتوى المطلوب إلحاقه |
استرجاع الكرة
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)
عرض البيانات داخل هذا الكائن على شكل كائن ثنائي كبير يتم تحويله إلى نوع المحتوى المحدّد. تضيف هذه الطريقة الامتداد المناسب إلى اسم الملف - على سبيل المثال، "myfile.pdf". ومع ذلك، يُفترض أن يمثّل جزء اسم الملف الذي يلي النقطة الأخيرة (إن وُجدت) إضافة حالية يجب استبدالها. وبالتالي، يصبح "ShoppingList.12.25.2014" هو "ShoppingList.12.25.pdf".
لعرض الحصص اليومية للإحالات الناجحة، راجِع حصص خدمات Google. قد تخضع نطاقات Google Workspace التي تم إنشاؤها حديثًا لحصص أكثر صرامة مؤقتًا.
المَعلمات
الاسم | Type | الوصف |
---|---|---|
contentType | String | نوع MIME المطلوب التحويل إليه. بالنسبة إلى معظم الكائنات الثنائية الكبيرة، يكون 'application/pdf' هو الخيار الصالح الوحيد. بالنسبة إلى الصور بتنسيق BMP أو GIF أو JPEG أو PNG، يكون أي من 'image/bmp' أو 'image/gif' أو 'image/jpeg' أو 'image/png' صالحًا أيضًا. |
استرجاع الكرة
Blob
— البيانات في صورة كائن ثنائي كبير (blob).
getBlob()
عرض البيانات داخل هذا الكائن على هيئة كائن ثنائي كبير (blob).
استرجاع الكرة
Blob
— البيانات في صورة كائن ثنائي كبير (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>.
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); Logger.log(output.getTitle());
استرجاع الكرة
String
— عنوان الصفحة.
getWidth()
الحصول على العرض الأولي لمربّع الحوار المخصّص في "مستندات 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>');
المَعلمات
الاسم | Type | الوصف |
---|---|---|
content | String | المحتوى المطلوب عرضه. |
استرجاع الكرة
HtmlOutput
: هذا الناتج للتسلسل.
الرميات
Error
: في حال كان تنسيق HTML مكتوبًا بشكلٍ غير صحيح
setFaviconUrl(iconUrl)
لإضافة علامة رابط لرمز مفضّل إلى الصفحة. ويتم تجاهل علامات رابط الرمز المفضّل المضمّنة مباشرةً في ملف HTML لبرمجة التطبيقات.
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); output.setFaviconUrl('http://www.example.com/image.png');
المَعلمات
الاسم | Type | الوصف |
---|---|---|
iconUrl | String | تمثّل هذه السمة عنوان URL لصورة الرمز المفضّل، مع إشارة في إضافة الصور إلى نوع الصورة. |
استرجاع الكرة
HtmlOutput
: هذا الناتج للتسلسل.
setHeight(height)
يضبط الارتفاع الأولي لمربّع الحوار المخصّص في "مستندات Google" أو "جداول بيانات Google" أو "نماذج Google". وإذا تم نشر HtmlOutput
كتطبيق ويب بدلاً من ذلك، لن يكون لهذه الطريقة أي تأثير. لتغيير حجم مربّع حوار مفتوح، يمكنك استدعاء
google.script.host.setHeight(height)
في رمز من جهة العميل.
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); output.setHeight(200);
المَعلمات
الاسم | Type | الوصف |
---|---|---|
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>
المَعلمات
الاسم | Type | الوصف |
---|---|---|
mode | SandboxMode | وضع الحماية المطلوب استخدامه. |
استرجاع الكرة
HtmlOutput
: هذا الناتج للتسلسل.
setTitle(title)
تحدِّد هذه السياسة عنوان صفحة الإخراج. بالنسبة إلى تطبيقات الويب، هذا هو عنوان الصفحة بأكملها، بينما
بالنسبة إلى HtmlOutput
المعروض في "جداول بيانات Google"، هذا هو عنوان مربّع الحوار.
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); output.setTitle('My First Page');
المَعلمات
الاسم | Type | الوصف |
---|---|---|
title | String | العنوان الجديد. |
استرجاع الكرة
HtmlOutput
: هذا الناتج للتسلسل.
setWidth(width)
يضبط العرض الأولي لمربّع حوار مخصّص في "مستندات Google" أو "جداول بيانات Google" أو "نماذج Google". وإذا تم نشر HtmlOutput
كتطبيق ويب بدلاً من ذلك، لن يكون لهذه الطريقة أي تأثير. لتغيير حجم مربّع حوار مفتوح، يمكنك استدعاء
google.script.host.setWidth(width)
في رمز من جهة العميل.
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); output.setWidth(200);
المَعلمات
الاسم | Type | الوصف |
---|---|---|
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). var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); output.setXFrameOptionsMode(HtmlService.XFrameOptionsMode.ALLOWALL);
المَعلمات
الاسم | Type | الوصف |
---|---|---|
mode | XFrameOptionsMode | وضع خيارات XFrame الذي تريد ضبطه. |
استرجاع الكرة
HtmlOutput
: هذا الناتج للتسلسل.