APIs do ActionScript 3.0

Acesso a script de saída e a URL (usando URLs de HTTP, mailto:, e assim por diante) é alcançado através do uso dos seguintes APIs do ActionScript 3.0:

  • A função flash.system.fscommand()
  • O método ExternalInterface.call()
  • A função flash.net.navigateToURL()

Para arquivos SWF executados localmente, chamadas de APIs têm êxito somente se o arquivo SWF e as páginas da Web que contêm estiverem na área de segurança localmente confiável. Chamadas a esses métodos falham se o conteúdo estiver na área de segurança local com rede ou no sistema local com arquivo.

O parâmetro AllowScriptAccess no código HTML que carrega um arquivo SWF controla a capacidade de executar acesso a URL de saída a partir do arquivo SWF. Defina este parâmetro dentro da marca PARAM ou EMBED. Se nenhum valor for definido para AllowScriptAccess, o arquivo SWF e a página HTML podem se comunicar somente se ambos forem do mesmo domínio.

O parâmetro AllowScriptAccess pode ter um de três valores possíveis: "sempre", "sameDomain" ou "nunca":

  • Quando AllowScriptAccess é "sempre", o arquivo SWF pode se comunicar com a página HTML à qual está incorporado. Esta regra se aplica mesmo quando o arquivo SWF for de um domínio diferente da página HTML.
  • Quando AllowScriptAccess é "sameDomain", o arquivo SWF se comunica com a página HTML a que está incorporado somente quando o arquivo SWF é do mesmo domínio. Este valor é o valor padrão de AllowScriptAccess. Para impedir que um arquivo SWF hospedado de um domínio acesse um script em uma página HTML em outro domínio, use esta configuração. Ou não defina um valor para AllowScriptAccess, 
  • Quando AllowScriptAccess é "nunca", o arquivo SWF não pode se comunicar com qualquer página HTML. O uso deste valor é obsoleto e não recomendado, e é desnecessário, se você não serve arquivos SWF não confiáveis de seu próprio domínio. Se for necessário servir arquivos SWF não confiáveis, a Adobe recomenda a criação de um subdomínio distinto onde todo o conteúdo não confiável será colocado.

Usar a função navigateToURL()

Além da configuração de segurança especificada pelo parâmetro allowScriptAccess discutido acima, a função navigateToURL() tem um segundo parâmetro opcional. Você pode usar esse parâmetro, destino, para especificar o nome de uma janela ou moldura HTML para enviar a enviar a solicitação de URL. Aplicam-se restrições de segurança adicionais a essas solicitações. As restrições variam, dependendo de navigateToURL() estar sendo usado como instrução de script ou não-script.

Para instruções de script, como navigateToURL("JavaScript: alert('Hello from Flash Player.')"), aplicam-se as regras a seguir.

  • Se o arquivo SWF for um arquivo confiável localmente, a solicitação tem êxito.
  • Se o destino for a página HTML na qual o arquivo SWF está incorporado, aplicam-se as regras de allowScriptAccess descritas acima.
  • Se o destino tiver conteúdo carregado do mesmo domínio que o arquivo SWF, a solicitação tem êxito.
  • Se o destino tiver conteúdo carregado de um domínio diferente do arquivo SWF, e nenhuma das condições anteriores é satisfeita, a solicitação falha.

Para instrução não de script (HTTP, HTTPS, mailto:, e assim por diante), a solicitação falha se todas as condições a seguir se aplicarem:

  • O destino é uma das palavras-chave especiais "_top" ou "_parent", e
  • o arquivo SWF está em uma página da Web hospedada de um diferente domínio, e
  • o arquivo SWF está incorporado com um valor para allowScriptAccess que não é "sempre".

 

Palavras-chave: AllowScriptAccess, Flash Player, Flash, Flex, fscommand, ExternalInterface, navigateToURL, sandbox; tn_16494

Esta obra está licenciada sob uma licença não adaptada da Creative Commons Attribution-Noncommercial-Share Alike 3.0  As publicações do Twitter™ e do Facebook não são cobertas pelos termos do Creative Commons.

Avisos legais   |   Política de privacidade online