एक HtmlOutput
ऑब्जेक्ट, जिसे स्क्रिप्ट से दिखाया जा सकता है. सुरक्षा से जुड़ी ज़रूरतों की वजह से,
स्क्रिप्ट किसी ब्राउज़र को सीधे HTML नहीं लौटा सकती हैं. इसके बजाय, उसे साफ़ करना चाहिए, ताकि
नुकसान पहुंचाने वाली कार्रवाइयां नहीं कर सकता. आप इस तरह से सैनिटाइज़ किए गए एचटीएमएल दिखा सकते हैं:
function doGet() { return HtmlService.createHtmlOutput('<b>Hello, world!</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 | इस ऑब्जेक्ट के अंदर का डेटा, बताए गए कॉन्टेंट टाइप में बदले गए BLOB के तौर पर दिखाएं. |
getBlob() | Blob | इस ऑब्जेक्ट के अंदर के डेटा को ब्लॉब के तौर पर दिखाएं. |
getContent() | String | इस HtmlOutput का कॉन्टेंट ऐक्सेस करता है. |
getFaviconUrl() | String | setFaviconUrl(iconUrl) पर कॉल करके, फ़ेविकॉन लिंक टैग को पेज पर जोड़ा जा सकता है. |
getHeight() | Integer | Google में कस्टम डायलॉग की शुरुआती ऊंचाई मिलती है Docs, Sheets या Forms. |
getMetaTags() | HtmlOutputMetaTag[] | इससे उन ऑब्जेक्ट का कलेक्शन मिलता है जो addMetaTag(name, content) को कॉल करके, पेज में जोड़े गए मेटा टैग दिखाते हैं. |
getTitle() | String | आउटपुट पेज का टाइटल दिखाता है. |
getWidth() | Integer | Google में कस्टम डायलॉग की शुरुआती चौड़ाई हासिल करता है Docs, Sheets या Forms. |
setContent(content) | HtmlOutput | इस HtmlOutput का कॉन्टेंट सेट करता है. |
setFaviconUrl(iconUrl) | HtmlOutput | पेज पर फ़ेविकॉन के लिए लिंक टैग जोड़ता है. |
setHeight(height) | HtmlOutput | Google में पसंद के मुताबिक डायलॉग की शुरुआती ऊंचाई सेट करता है Docs, Sheets या Forms. |
setSandboxMode(mode) | HtmlOutput | इस तरीके से अब कोई असर नहीं पड़ता — पहले यह क्लाइंट-साइड स्क्रिप्ट के लिए इस्तेमाल किए जाने वाले sandbox
mode को सेट करता था. |
setTitle(title) | HtmlOutput | आउटपुट पेज का टाइटल सेट करता है. |
setWidth(width) | HtmlOutput | Google में कस्टम डायलॉग की शुरुआती चौड़ाई सेट करता है Docs, Sheets या Forms. |
setXFrameOptionsMode(mode) | HtmlOutput | पेज के X-Frame-Options हेडर की स्थिति सेट करता है, जिससे क्लिकजैकिंग को कंट्रोल किया जाता है
से बचाव. |
विस्तृत दस्तावेज़
addMetaTag(name, content)
पेज पर मेटा टैग जोड़ता है. किसी Apps Script एचटीएमएल फ़ाइल में, सीधे तौर पर शामिल मेटा टैग अनदेखा किया गया. सिर्फ़ नीचे दिए गए मेटा टैग इस्तेमाल किए जा सकते हैं:
<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
— अगर एचटीएमएल गलत है
इन्हें भी देखें
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
— अगर एचटीएमएल बहुत खराब है
इन्हें भी देखें
asTemplate()
इस HtmlOutput
के साथ काम करने वाला HtmlTemplate
दिखाता है. इस तरीके का इस्तेमाल इन कामों के लिए किया जा सकता है
समय-समय पर टेंप्लेट बनाने में मदद मिलती है. 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 डोमेन पर, कुछ समय के लिए पाबंदियां लगाई जा सकती हैं कोटा.
पैरामीटर
नाम | टाइप | ब्यौरा |
---|---|---|
contentType | String | वह MIME प्रकार जिसमें बदलना है. ज़्यादातर ब्लॉब के लिए, 'application/pdf'
ही एक विकल्प है. BMP, GIF, JPEG या PNG फ़ॉर्मैट वाली इमेज के लिए, 'image/bmp' , 'image/gif' , 'image/jpeg' या 'image/png' में से कोई भी
मान्य. Google Docs के किसी दस्तावेज़ के लिए, 'text/markdown' भी मान्य है. |
वापसी का टिकट
Blob
— BLOB के तौर पर डेटा.
getBlob()
getContent()
इस HtmlOutput
का कॉन्टेंट ऐक्सेस करता है.
// Log "<b>Hello, world!</b>" var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); Logger.log(output.getContent());
वापसी का टिकट
String
— दिखाया जाने वाला कॉन्टेंट.
getFaviconUrl()
setFaviconUrl(iconUrl)
पर कॉल करके, फ़ेविकॉन लिंक टैग को पेज पर जोड़ा जा सकता है. किसी Apps Script एचटीएमएल फ़ाइल में, सीधे तौर पर शामिल किए गए फ़ेविकॉन लिंक टैग
अनदेखा किया गया.
var output = HtmlService.createHtmlOutput('<b>Hello, world!</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)
को क्लाइंट-साइड कोड में डालें.
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); output.setHeight(200); Logger.log(output.getHeight());
वापसी का टिकट
Integer
— पिक्सल में ऊंचाई.
getMetaTags()
इससे उन ऑब्जेक्ट का कलेक्शन मिलता है जो addMetaTag(name, content)
को कॉल करके, पेज में जोड़े गए मेटा टैग दिखाते हैं. किसी Apps Script एचटीएमएल फ़ाइल में, सीधे तौर पर शामिल मेटा टैग
अनदेखा किया गया.
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> एचटीएमएल एलिमेंट को अनदेखा किया जाता है.
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); Logger.log(output.getTitle());
वापसी का टिकट
String
— पेज का टाइटल.
getWidth()
Google में कस्टम डायलॉग की शुरुआती चौड़ाई हासिल करता है
Docs, Sheets या Forms. अगर इसके बजाय 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
— अगर एचटीएमएल गलत है
setFaviconUrl(iconUrl)
पेज पर फ़ेविकॉन के लिए लिंक टैग जोड़ता है. किसी ऐप्लिकेशन में सीधे तौर पर शामिल फ़ेविकॉन लिंक टैग स्क्रिप्ट एचटीएमएल फ़ाइल को अनदेखा किया जाता है.
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); output.setFaviconUrl('http://www.example.com/image.png');
पैरामीटर
नाम | टाइप | ब्यौरा |
---|---|---|
iconUrl | String | फ़ेविकॉन इमेज का यूआरएल, जिसमें इमेज एक्सटेंशन से इमेज के बारे में पता चलता है टाइप करें. |
वापसी का टिकट
HtmlOutput
— चेन बनाने के लिए यह आउटपुट.
setHeight(height)
Google में पसंद के मुताबिक डायलॉग की शुरुआती ऊंचाई सेट करता है
Docs, Sheets या Forms. अगर इसके बजाय 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
को सेट करता था. उपयोगकर्ताओं को नुकसान पहुंचाने वाले एचटीएमएल या
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>
पैरामीटर
नाम | टाइप | ब्यौरा |
---|---|---|
mode | SandboxMode | इस्तेमाल करने के लिए सैंडबॉक्स मोड. |
वापसी का टिकट
HtmlOutput
— चेन बनाने के लिए यह आउटपुट.
setTitle(title)
आउटपुट पेज का टाइटल सेट करता है. वेब ऐप्लिकेशन के लिए, यह पूरे पेज का शीर्षक होता है, जबकि
जो HtmlOutput
Google Sheets में दिखाई गई है उसके लिए, यह डायलॉग बॉक्स है.
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>'); output.setTitle('My First Page');
पैरामीटर
नाम | टाइप | ब्यौरा |
---|---|---|
title | String | नया टाइटल. |
वापसी का टिकट
HtmlOutput
— चेन बनाने के लिए यह आउटपुट.
setWidth(width)
Google में कस्टम डायलॉग की शुरुआती चौड़ाई सेट करता है
Docs, Sheets या Forms. अगर इसके बजाय 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
मोड सेट नहीं करती है, तो Apps Script डिफ़ॉल्ट रूप से 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
— चेन बनाने के लिए यह आउटपुट.