كائن HtmlOutput
الذي يمكن عرضه من نص برمجي لاعتبارات أمنية،
لا يمكن للنصوص البرمجية أن تعيد مباشرة HTML إلى المتصفح. بدلاً من ذلك، يجب عليهم تعقيمها حتى
لا يمكنه تنفيذ إجراءات ضارة. يمكنك عرض محتوى HTML تم تحسينه على النحو التالي:
function doGet() { return HtmlService.createHtmlOutput('<b>Hello, world!</b>'); }
HtmlOutput
JavaScript وCSS مضمَّنَين. (هذا هو القياس العادي
JavaScript من جهة العميل تعالج نموذج DOM، وليس "برمجة تطبيقات Google") كل هذا المحتوى
تم وضع الحماية في وضع الحماية باستخدام 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 | عرض البيانات داخل هذا الكائن على شكل كائن ثنائي كبير. |
getContent() | String | يمكن الوصول إلى محتوى جهاز "HtmlOutput " هذا. |
getFaviconUrl() | String | الحصول على عنوان URL لعلامة رابط الرمز المفضّل التي تمت إضافتها إلى الصفحة عن طريق طلب setFaviconUrl(iconUrl) . |
getHeight() | Integer | الحصول على الارتفاع الأولي لمربّع الحوار المخصّص في Google "مستندات 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" أو "نماذج 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');
المعلمات
الاسم | النوع | الوصف |
---|---|---|
name | String | قيمة سمة اسم العلامة الوصفية. |
content | String | قيمة سمة المحتوى للعلامة الوصفية. |
الإرجاع
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());
المعلمات
الاسم | النوع | الوصف |
---|---|---|
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());
المعلمات
الاسم | النوع | الوصف |
---|---|---|
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 التي تم إنشاؤها حديثًا أكثر صرامة مؤقتًا. حصصها.
المعلمات
الاسم | النوع | الوصف |
---|---|---|
contentType | String | نوع MIME المطلوب التحويل إليه. بالنسبة إلى معظم الكائنات الثنائية الكبيرة، 'application/pdf' هو
هو الخيار الوحيد الصالح. بالنسبة إلى الصور بتنسيق BMP أو GIF أو JPEG أو PNG، يتم أيضًا استخدام أي من 'image/bmp' أو 'image/gif' أو 'image/jpeg' أو 'image/png'
صالحة. بالنسبة إلى مستند "مستندات Google"، يُعدّ 'text/markdown' أيضًا صالحًا. |
الإرجاع
Blob
— البيانات ككائنات ثنائية كبيرة (blob).
getBlob()
عرض البيانات داخل هذا الكائن على شكل كائن ثنائي كبير.
الإرجاع
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" أو "نماذج 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()
الحصول على عنوان صفحة الإخراج لاحظ أن <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>');
المعلمات
الاسم | النوع | الوصف |
---|---|---|
content | String | المحتوى المطلوب عرضه. |
الإرجاع
HtmlOutput
— هذا الناتج، للتسلسل.
الرميات
Error
: إذا تمت كتابة رمز HTML بشكل غير صحيح
setFaviconUrl(iconUrl)
تضيف علامة رابط لرمز مفضّل إلى الصفحة. علامات روابط الرموز المفضلة المضمّنة مباشرةً في التطبيقات ويتم تجاهل ملف HTML للنص البرمجي.
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); output.setFaviconUrl('http://www.example.com/image.png');
المعلمات
الاسم | النوع | الوصف |
---|---|---|
iconUrl | String | عنوان 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);
المعلمات
الاسم | النوع | الوصف |
---|---|---|
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 | SandboxMode | وضع الحماية المطلوب استخدامه. |
الإرجاع
HtmlOutput
— هذا الناتج، للتسلسل.
setTitle(title)
لضبط عنوان صفحة الناتج. بالنسبة لتطبيقات الويب، هذا هو عنوان الصفحة بأكملها، بينما
بالنسبة إلى HtmlOutput
المعروض في جداول بيانات Google، هذا هو عنوان مربع الحوار.
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); output.setTitle('My First Page');
المعلمات
الاسم | النوع | الوصف |
---|---|---|
title | String | العنوان الجديد |
الإرجاع
HtmlOutput
— هذا الناتج، للتسلسل.
setWidth(width)
لضبط العرض الأولي لمربّع حوار مخصّص في Google
"مستندات Google" أو "جداول بيانات Google" أو "نماذج Google". إذا تم نشر "HtmlOutput
" كتطبيق ويب بدلاً من ذلك، سيتم تنفيذ ما يلي:
ليس هناك أي تأثير. لتغيير حجم مربع حوار مفتوح فعلاً، اتصل بالرقم
google.script.host.setWidth(width)
في الرمز من جهة العميل.
var output = HtmlService.createHtmlOutput('<b>Hello, world!</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). var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); output.setXFrameOptionsMode(HtmlService.XFrameOptionsMode.ALLOWALL);
المعلمات
الاسم | النوع | الوصف |
---|---|---|
mode | XFrameOptionsMode | وضع خيارات XFrame المطلوب تعيينه. |
الإرجاع
HtmlOutput
— هذا الناتج، للتسلسل.