ActionScript 3.0 API'leri

Giden komut dosyası oluşturma ve URL erişimi (HTTP URL'leri, mailto: vs. kullanarak) aşağıdaki ActionScript 3.0 API'leri kullanılarak gerçekleştirilir:

  • flash.system.fscommand() işlevi
  • ExternalInterface.call() yöntemi
  • flash.net.navigateToURL() işlevi

Yerel olarak çalıştırılan SWF dosyaları için API çağrıları yalnızca SWF dosyası ve kapsayan web sayfası yerel güvenilen güvenlik sanal alanındaysa başarılı olur. İçerik, ağ iletişimiyle yerel veya dosya sistemiyle yerel sanal alandaysa bu yöntemlere çağrılar başarısız olur.

Bir SWF dosyasını yükleyen HTML kodundaki AllowScriptAccess parametresi, SWF dosyasından giden URL erişimini gerçekleştirme yeteneğini denetler. PARAM veya EMBED etiketinin içinde bu parametreyi ayarlayın. AllowScriptAccess için herhangi bir parametre ayarlanmazsa SWF dosyası ve HTML sayfası yalnızca her ikisi de aynı etki alanından geliyorsa iletişim kurabilir.

AllowScriptAccess parametresi üç olası değerden birine sahip olabilir: "always", "sameDomain" veya "never:".

  • AllowScriptAccess "always" olduğunda SWF dosyası, gömülü olduğu HTML sayfasıyla iletişim kurabilir. Bu kural, SWF dosyası HTML sayfasından farklı bir etki alanından gelse de geçerlidir.
  • AllowScriptAccess "sameDomain" olduğunda, SWF dosyası yalnızca HTML sayfasıyla aynı etki alanından geliyorsa, gömülü olduğu HTML sayfasıyla iletişim kurabilir. Bu değer AllowScriptAccess için varsayılan değerdir. Bir etki alanında barındırılan SWF dosyasının, başka bir etki alanından gelen HTML sayfasındaki bir komut dosyasına erişmesini önlemek için bu ayarı kullanın. Veya AllowScriptAccess için bir değer ayarlamayın.
  • AllowScriptAccess "never" olduğunda SWF dosyası herhangi bir HTML sayfasıyla iletişim kuramaz. Bu değer kullanımdan kaldırılmıştır ve önerilmez. Kendi etki alanınızdan güvenilmeyen SWF dosyaları sunmuyorsanız gerekli de değildir. Güvenilmeyen SWF dosyaları sunmanız gerekiyorsa Adobe ayrı bir alt etki alanı oluşturup tüm güvenilmeyen içeriği oraya yerleştirmenizi önerir.

navigateToURL() işlevini kullanma

Yukarıda açıklanan allowScriptAccess parametresi tarafından belirtilen güvenlik ayarına ek olarak navigateToURL() işlevi ikinci bir isteğe bağlı parametreye sahiptir. Target parametresi, URL isteğinin gönderileceği bir HTML penceresinin veya karesinin adını belirtmek için kullanılabilir. Bu istekler için ek güvenlik kısıtlamaları uygulanır. Bu kısıtlamalar, navigateToURL() öğesinin komut dosyası oluşturma deyimi olarak mı yoksa komut dosyası oluşturmama deyimi olarak mı kullanıldığına bağlı olarak değişiklik gösterir.

navigateToURL("JavaScript: alert('Hello from Flash Player.')") gibi komut dosyası oluşturma deyimleri için şu kurallar geçerlidir.

  • SWF dosyası yerel olarak güvenilen bir dosyaysa istek başarılı olur.
  • Hedef, SWF dosyasının gömülü olduğu HTML sayfasıysa yukarıda açıklanan allowScriptAccess kuralları geçerli olur.
  • Hedef, SWF dosyasıyla aynı etki alanından yüklenmiş içeriği barındırıyorsa istek başarılı olur.
  • Hedef, SWF dosyasından farklı bir etki alanından yüklenmiş içeriği barındırıyorsa ve önceki iki koşul da karşılanmamışsa istek başarısız olur.

Komut dosyası oluşturmama deyimleri için (örn. HTTP, HTTPS ve mailto:) şu koşulların tümü geçerli olursa istek başarısız olur:

  • Hedef, "_top" veya "_parent" özel anahtar sözcüklerinden biriyse ve
  • SWF dosyası, farklı bir etki alanından barındırılan bir web sitesindeyse ve
  • SWF dosyası, "always" dışındaki bir allowScriptAccess değeriyle gömülüyse.

 

Anahtar kelimeler: AllowScriptAccess, Flash Player, Flash, Flex, fscommand, ExternalInterface, navigateToURL, sandbox; tn_16494

Bu çalışma Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License kapsamında lisanslanmıştır  Creative Commons şartları, Twitter™ ve Facebook sitelerinde paylaşılanları kapsamaz.

Yasal Uyarılar   |   Çevrimiçi Gizlilik İlkesi