Kullanıcılara kötü amaçlı HTML veya JavaScript sunulmasını önlemek için Apps Komut Dosyası HTML hizmeti web uygulamalarını veya özel kullanıcıyı korumalı alana almak için iframe'leri kullanır. Google Dokümanlar, E-Tablolar ve Formlar'ı kullanabilirsiniz. (HTML hizmeti, bir dosya adında bir (ör. e-postanın gövdesinin oluşturulması gibi diğer durumlarda) korumalı alana alın.) Korumalı alan istemci tarafı koda sınırlamalar getirir.
Korumalı Alan Modu
IFRAME
hariç tüm korumalı alan modları kullanımdan kaldırıldı. Daha eski korumalı alanı kullanan uygulamalar
modları artık otomatik olarak yeni IFRAME
modunu kullanıyor. Belgenizde
eski modlar (NATIVE
ve EMULATED
) kullanılarak geliştirilmişse
taşıma talimatlarını uygulayarak
IFRAME
modunda düzgün şekilde çalıştıklarından emin olun.
setSandboxMode
yönteminin artık hiçbir etkisi yoktur.
IFRAME modundaki kısıtlamalar
IFRAME
korumalı alan modu şuna göredir:
iframe korumalı alanı özelliği
şu anahtar kelimeleri kullanarak HTML5'te değiştirin:
allow-same-origin
allow-forms
allow-scripts
allow-popups
allow-downloads
allow-modals
allow-popups-to-escape-sandbox
allow-top-navigation-by-user-activation
- Bu özellik yalnızca şunun için ayarlanır: bağımsız komut dosyası projeleri hakkında daha fazla bilgi edinin.
İçeriğin gezinmesine olanak tanıyan allow-top-navigation
anahtar kelimesi
üst düzey göz atma bağlamı, kısıtlanmıştır ve
korumalıdır. Komut dosyanızı yönlendirmeniz gerekirse
tercih etmesi gerekir.
Bağlantı hedefi özelliğini ayarlama
IFRAME
modunda bağlantı hedefi özelliğini
_top
veya _blank
:
Code.js
function doGet() {
var template = HtmlService.createTemplateFromFile('top');
return template.evaluate().setSandboxMode(HtmlService.SandboxMode.IFRAME);
}
top.html
<!DOCTYPE html>
<html>
<body>
<div>
<a href="http://google.com" target="_top">Click Me!</a>
</div>
</body>
</html>
Bu özelliği, başlık bölümündeki <base>
etiketini kullanarak da geçersiz kılabilirsiniz.
bölümüne ekleyin:
<!DOCTYPE html>
<html>
<head>
<base target="_top">
</head>
<body>
<div>
<a href="http://google.com">Click Me!</a>
</div>
</body>
</html>
Etkin içerik için HTTPS gereklidir
"Etkin" içerik gibi komut dosyaları, harici stil sayfaları ve XmlHttpRequests gibi dosya HTTPS, HTTP değil.