Class HtmlOutput

HtmlOutput

एक HtmlOutput ऑब्जेक्ट, जिसे स्क्रिप्ट से दिखाया जा सकता है. सुरक्षा से जुड़ी वजहों से, स्क्रिप्ट सीधे तौर पर ब्राउज़र को एचटीएमएल नहीं दिखा सकतीं. इसके बजाय, उन्हें इसे सुरक्षित करना होगा, ताकि यह नुकसान पहुंचाने वाली कार्रवाइयां न कर सके. सैनिटाइज़ किए गए एचटीएमएल को इस तरह दिखाया जा सकता है:

function doGet() {
  return HtmlService.createHtmlOutput(&<#>39;bHello, wo<rl>d!/b');
}
HtmlOutput में मौजूद कोड में, एम्बेड की गई JavaScript और सीएसएस शामिल हो सकती हैं. (यह स्टैंडर्ड क्लाइंट-साइड JavaScript है, जो DOM में बदलाव करती है. यह Apps Script नहीं है). इस पूरे कॉन्टेंट को iframe सैंडबॉक्सिंग का इस्तेमाल करके सैंडबॉक्स किया जाता है. ज़्यादा जानकारी के लिए, एचटीएमएल सेवा से जुड़ी पाबंदियों के बारे में गाइड देखें.

तरीके

तरीकारिटर्न टाइपसंक्षिप्त विवरण
addMetaTag(name, content)HtmlOutputयह पेज में मेटा टैग जोड़ता है.
append(addedContent)HtmlOutputइस HtmlOutput के कॉन्टेंट में नया कॉन्टेंट जोड़ता है.
appendUntrusted(addedContent)HtmlOutputयह फ़ंक्शन, कॉन्टेक्स्ट के हिसाब से एस्केपिंग का इस्तेमाल करके, इस HtmlOutput के कॉन्टेंट में नया कॉन्टेंट जोड़ता है.
asTemplate()HtmlTemplateइस HtmlOutput से बैक अप लिया गया HtmlTemplate दिखाता है.
clear()HtmlOutputइससे मौजूदा कॉन्टेंट मिट जाता है.
getAs(contentType)Blobइस ऑब्जेक्ट में मौजूद डेटा को, बताए गए कॉन्टेंट टाइप में बदले गए ब्लॉब के तौर पर दिखाता है.
getBlob()Blobइस ऑब्जेक्ट में मौजूद डेटा को blob के तौर पर दिखाओ.
getContent()Stringइस HtmlOutput का कॉन्टेंट मिलता है.
getFaviconUrl()Stringयह फ़ंक्शन, setFaviconUrl(iconUrl) को कॉल करके पेज में जोड़े गए फ़ेविकॉन लिंक टैग का यूआरएल दिखाता है.
getHeight()IntegerGoogle Docs, Sheets या Forms में कस्टम डायलॉग की शुरुआती ऊंचाई का पता लगाता है.
getMetaTags()HtmlOutputMetaTag[]यह फ़ंक्शन, उन ऑब्जेक्ट की एक कैटगरी को दिखाता है जो addMetaTag(name, content) को कॉल करके पेज में जोड़े गए मेटा टैग को दिखाते हैं.
getTitle()Stringइस फ़ंक्शन से, आउटपुट पेज का टाइटल मिलता है.
getWidth()IntegerGoogle Docs, Sheets या Forms में कस्टम डायलॉग की शुरुआती चौड़ाई मिलती है.
setContent(content)HtmlOutputइस HtmlOutput का कॉन्टेंट सेट करता है.
setFaviconUrl(iconUrl)HtmlOutputयह फ़ंक्शन, पेज पर फ़ेविकॉन के लिए लिंक टैग जोड़ता है.
setHeight(height)HtmlOutputGoogle Docs, Sheets या Forms में कस्टम डायलॉग की शुरुआती ऊंचाई सेट करता है.
setSandboxMode(mode)HtmlOutputइस तरीके का अब कोई असर नहीं होता. पहले, यह क्लाइंट-साइड स्क्रिप्ट के लिए इस्तेमाल किया गया sandbox mode सेट करता था.
setTitle(title)HtmlOutputइससे आउटपुट पेज का टाइटल सेट किया जाता है.
setWidth(width)HtmlOutputGoogle Docs, Sheets या Forms में कस्टम डायलॉग की शुरुआती चौड़ाई सेट करता है.
setXFrameOptionsMode(mode)HtmlOutputयह कुकी, पेज के X-Frame-Options हेडर की स्थिति सेट करती है. इससे क्लिकजैकिंग को रोकने में मदद मिलती है.

ज़्यादा जानकारी वाला दस्तावेज़

addMetaTag(name, content)

यह पेज में मेटा टैग जोड़ता है. Apps Script की एचटीएमएल फ़ाइल में सीधे तौर पर शामिल किए गए मेटा टैग अनदेखा कर दिए जाते हैं. सिर्फ़ इन मेटा टैग का इस्तेमाल किया जा सकता है:

<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');

पैरामीटर

नामटाइपब्यौरा
nameStringमेटा टैग के नाम एट्रिब्यूट की वैल्यू.
contentStringमेटा टैग के कॉन्टेंट एट्रिब्यूट की वैल्यू.

वापसी का टिकट

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());

पैरामीटर

नामटाइपब्यौरा
addedContentStringजोड़ा जाने वाला कॉन्टेंट.

वापसी का टिकट

HtmlOutput — यह आउटपुट, चेनिंग के लिए है.

थ्रॉ

Error — अगर एचटीएमएल गलत तरीके से बनाया गया है

इन्हें भी देखें


appendUntrusted(addedContent)

यह फ़ंक्शन, कॉन्टेक्स्ट के हिसाब से एस्केपिंग का इस्तेमाल करके, इस HtmlOutput के कॉन्टेंट में नया कॉन्टेंट जोड़ता है.

यह तरीका, HtmlOutput की मौजूदा स्थिति के आधार पर कॉन्टेंट को सही तरीके से एस्केप करता है, ताकि नतीजे के तौर पर एक सुरक्षित स्ट्रिंग मिले. इसमें कोई मार्कअप या साइड इफ़ेक्ट नहीं होता. जब भी आपको किसी ऐसे सोर्स से कॉन्टेंट जोड़ना हो जिस पर भरोसा नहीं किया जा सकता, तब append का इस्तेमाल करने के बजाय इसका इस्तेमाल करें. जैसे, किसी उपयोगकर्ता से कॉन्टेंट जोड़ते समय इसका इस्तेमाल करें. इससे, क्रॉस साइट स्क्रिप्टिंग (XSS) बग को गलती से अनुमति देने से बचा जा सकता है. इस बग में, आपके जोड़े गए कॉन्टेंट या मार्कअप की वजह से कोड का अनचाहा एक्ज़ीक्यूशन होता है.

// Log &<q>uot;bHello, w<or>&ld!/&blt;pgt;Hello again, w&orld.&lt;/pgt;"
const output = HtmlService.createHt<m>lOutput('<bH>ello, world!/b');
output<.>appendUntrusted(<9;>pHello again, world./p');
Logger.log(output.getContent());

पैरामीटर

नामटाइपब्यौरा
addedContentStringजोड़ा जाने वाला कॉन्टेंट.

वापसी का टिकट

HtmlOutput — यह आउटपुट, चेनिंग के लिए है.

थ्रॉ

Error — अगर एचटीएमएल बहुत खराब तरीके से बनाया गया है

इन्हें भी देखें


asTemplate()

इस HtmlOutput से बैक अप लिया गया HtmlTemplate दिखाता है. इस तरीके का इस्तेमाल, टेंप्लेट को धीरे-धीरे बनाने के लिए किया जा सकता है. 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 डोमेन पर, कुछ समय के लिए ज़्यादा पाबंदियां लागू हो सकती हैं.

पैरामीटर

नामटाइपब्यौरा
contentTypeStringजिस MIME टाइप में बदलना है. ज़्यादातर ब्लॉब के लिए, 'application/pdf' ही मान्य विकल्प है. BMP, GIF, JPEG या PNG फ़ॉर्मैट में मौजूद इमेज के लिए, 'image/bmp', 'image/gif', 'image/jpeg' या 'image/png' में से कोई भी एक मान्य है. Google Docs दस्तावेज़ के लिए, 'text/markdown' भी मान्य है.

वापसी का टिकट

Blob — डेटा को एक बड़े बाइनरी ऑब्जेक्ट के तौर पर दिखाया जाता है.


getBlob()

इस ऑब्जेक्ट में मौजूद डेटा को blob के तौर पर दिखाओ.

वापसी का टिकट

Blob — डेटा को एक बड़े बाइनरी ऑब्जेक्ट के तौर पर दिखाया जाता है.


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()

यह फ़ंक्शन, setFaviconUrl(iconUrl) को कॉल करके पेज में जोड़े गए फ़ेविकॉन लिंक टैग का यूआरएल दिखाता है. Apps Script की एचटीएमएल फ़ाइल में सीधे तौर पर शामिल किए गए फ़ेविकॉन लिंक टैग को अनदेखा कर दिया जाता है.

const output = HtmlService.createHtmlOutput(&<#>39;bHello, wo<rl>d!/b');
output.setFaviconUrl('http://www.example.com/image.png');
Logger.log(output.getFaviconUrl());

वापसी का टिकट

String — फ़ेविकॉन इमेज का यूआरएल.


getHeight()

Google Docs, Sheets या Forms में कस्टम डायलॉग की शुरुआती ऊंचाई का पता लगाता है. अगर 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) को कॉल करके पेज में जोड़े गए मेटा टैग को दिखाते हैं. Apps Script की एचटीएमएल फ़ाइल में सीधे तौर पर शामिल किए गए मेटा टैग अनदेखा कर दिए जाते हैं.

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()

इस फ़ंक्शन से, आउटपुट पेज का टाइटल मिलता है. ध्यान दें कि <title> एचटीएमएल एलिमेंट को अनदेखा किया जाता है.

const output = HtmlService.createHtmlOutput(&<#>39;bHello, wo<rl>d!/b');
Logger.log(output.getTitle());

वापसी का टिकट

String — पेज का टाइटल.


getWidth()

Google Docs, Sheets या Forms में कस्टम डायलॉग की शुरुआती चौड़ाई मिलती है. अगर 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');

पैरामीटर

नामटाइपब्यौरा
contentStringदिखाया जाने वाला कॉन्टेंट.

वापसी का टिकट

HtmlOutput — यह आउटपुट, चेनिंग के लिए है.

थ्रॉ

Error — अगर एचटीएमएल गलत तरीके से बनाया गया है


setFaviconUrl(iconUrl)

यह फ़ंक्शन, पेज पर फ़ेविकॉन के लिए लिंक टैग जोड़ता है. Apps Script की एचटीएमएल फ़ाइल में सीधे तौर पर शामिल किए गए फ़ेविकॉन लिंक टैग को अनदेखा कर दिया जाता है.

const output = HtmlService.createHtmlOutput(&<#>39;bHello, wo<rl>d!/b');
output.setFaviconUrl('http://www.example.com/image.png');

पैरामीटर

नामटाइपब्यौरा
iconUrlStringफेविकॉन इमेज का यूआरएल. इसमें इमेज एक्सटेंशन से इमेज टाइप का पता चलता है.

वापसी का टिकट

HtmlOutput — यह आउटपुट, चेनिंग के लिए है.


setHeight(height)

Google Docs, Sheets या Forms में कस्टम डायलॉग की शुरुआती ऊंचाई सेट करता है. अगर HtmlOutput को वेब ऐप्लिकेशन के तौर पर पब्लिश किया जाता है, तो इस तरीके का कोई असर नहीं पड़ता. पहले से खुले हुए किसी डायलॉग का साइज़ बदलने के लिए, क्लाइंट-साइड कोड में google.script.host.setHeight(height) को कॉल करें.

const output = HtmlService.createHtmlOutput(&<#>39;bHello, wo<rl>d!/b');
output.setHeight(200);

पैरामीटर

नामटाइपब्यौरा
heightIntegerपिक्सेल में नई ऊंचाई; null से डिफ़ॉल्ट वैल्यू मिलती है.

वापसी का टिकट

HtmlOutput — यह आउटपुट, चेनिंग के लिए है.


setSandboxMode(mode)

इस तरीके का अब कोई असर नहीं होता. पहले, यह क्लाइंट-साइड स्क्रिप्ट के लिए इस्तेमाल किया गया sandbox mode सेट करता था. उपयोगकर्ताओं को नुकसान पहुंचाने वाले एचटीएमएल या JavaScript से बचाने के लिए, एचटीएमएल सेवा से दिखाया गया क्लाइंट-साइड कोड, सुरक्षा सैंडबॉक्स में काम करता है. यह कोड पर पाबंदियां लगाता है. पहले, इस तरीके से स्क्रिप्ट लिखने वाले लोग, सैंडबॉक्स के अलग-अलग वर्शन में से किसी एक को चुन सकते थे. हालांकि, अब सभी स्क्रिप्ट IFRAME मोड का इस्तेमाल करती हैं. इससे कोई फ़र्क़ नहीं पड़ता कि सैंडबॉक्स का कौनसा मोड सेट है. ज़्यादा जानकारी के लिए, एचटीएमएल सेवा से जुड़ी पाबंदियों के बारे में गाइड देखें.

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)

इससे आउटपुट पेज का टाइटल सेट किया जाता है. वेब ऐप्लिकेशन के लिए, यह पूरे पेज का टाइटल होता है. वहीं, Google Sheets में दिखाए गए HtmlOutput के लिए, यह डायलॉग का टाइटल होता है.

const output = HtmlService.createHtmlOutput(&<#>39;bHello, wo<rl>d!/b');
output.setTitle('My First Page');

पैरामीटर

नामटाइपब्यौरा
titleStringनया टाइटल.

वापसी का टिकट

HtmlOutput — यह आउटपुट, चेनिंग के लिए है.


setWidth(width)

Google Docs, Sheets या Forms में कस्टम डायलॉग की शुरुआती चौड़ाई सेट करता है. अगर HtmlOutput को वेब ऐप्लिकेशन के तौर पर पब्लिश किया जाता है, तो इस तरीके का कोई असर नहीं पड़ता. पहले से खुले हुए किसी डायलॉग का साइज़ बदलने के लिए, क्लाइंट-साइड कोड में google.script.host.setWidth(width) को कॉल करें.

const output = HtmlService.createHtmlOutput(&<#>39;bHello, wo<rl>d!/b');
output.setWidth(200);

पैरामीटर

नामटाइपब्यौरा
widthIntegerपिक्सल में नई चौड़ाई; null से डिफ़ॉल्ट वैल्यू मिलती है.

वापसी का टिकट

HtmlOutput — यह आउटपुट, चेनिंग के लिए है.


setXFrameOptionsMode(mode)

यह कुकी, पेज के X-Frame-Options हेडर की स्थिति सेट करती है. इससे क्लिकजैकिंग को रोकने में मदद मिलती है.

XFrameOptionsMode.ALLOWALL को सेट करने पर, कोई भी साइट पेज को iframe कर सकती है. इसलिए, डेवलपर को क्लिकजैकिंग से सुरक्षा के लिए, अपनी सुरक्षा लागू करनी चाहिए.

अगर कोई स्क्रिप्ट X-Frame-Options मोड सेट नहीं करती है, तो Apps Script, 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);

पैरामीटर

नामटाइपब्यौरा
modeXFrameOptionsModeसेट करने के लिए XFrameOptions मोड.

वापसी का टिकट

HtmlOutput — यह आउटपुट, चेनिंग के लिए है.