ActionScript 3.0-API:er

Utgående skript och URL-åtkomst (via HTTP URL:er, mailto, o.s.v.) fås med följande ActionScript 3.0-API:er:

  • Funktionen flash.system.fscommand()
  • Metoden ExternalInterface.call()
  • Funktionen flash.net.navigateToURL()

För SWF-filer som körs lokalt lyckas bara API-anrop om SWF-filen och de webbsidor som ingår ligger i den lokalt tillförlitliga säkerhetssandlådan. Om innehållet ligger i systemsandlådan lokalt-med-nätverk eller lokalt-med-fil misslyckas dessa metoder.

Parametern AllowScriptAccess i HTML-koden, som läser in SWF-filer, styr möjligheten att ansluta till URL:er inifrån SWF-filen. Definiera parametern i taggen PARAM eller EMBED. Om AllowScriptAccess inte definieras med ett värde kan SWF-filen och HTML-sidan bara kommunicera om de utgår från samma domän.

Parametern AllowScriptAccess kan ta ett av tre möjliga värden: "always", "sameDomain" eller "never".

  • Om AllowScriptAccess har värdet "always" kan SWF-filen kommunicera med den HTML-sida där den är inbäddad. Det gäller även om SWF-filen utgår från en annan domän än den HTML-sida där den är inbäddad.
  • Om AllowScriptAccess har värdet "sameDomain" kan SWF-filen kommunicera med den HTML-sida där den är inbäddad så länge de utgår från samma domän. Detta är standardinställningen för AllowScriptAccess. Om du vill förhindra att en SWF-fil från en viss domän får tillgång till skript på en HTML-sida i en annan domän använder du denna inställning. Du kan även låta bli att ge AllowScriptAccess något värde alls. 
  • Om AllowScriptAccess har värdet "never" kan SWF-filen inte kommunicera med någon HTML-sida alls. Den här funktionen rekommenderas inte längre, och är onödig så länge du inte behöver kommunicera med otillförlitliga SWF-filer från din egen domän. Om du måste hantera otillförlitliga SWF-filer rekommenderar Adobe att du skapar en särskild underdomän och lägger allt otillförlitligt innehåll där.

Använda funktionen navigateToURL()

Utöver säkerhetsinställningarna i parametern allowScriptAccess som nämns ovan har funktionen navigateToURL() en andra, valfri parameter. Du kan använda den här parametern, "target", för att ange namnet på det HTML-fönster eller den ram dit du vill skicka URL-anropet. För sådana anrop gäller ytterligare säkerhetsbegränsningar. Begränsningarna varierar beroende på om navigateToURL() används som skriptberoende programsats eller inte.

Vid skriptberoende programsatser, som navigateToURL(”JavaScript: alert('Hello from Flash Player.')"), gäller följande regler.

  • Om SWF-filen är en lokalt tillförlitlig fil beviljas anropet.
  • Om målet är den HTML-sida där SWF-filen är inbäddad gäller reglerna för allowScriptAccess enligt ovan.
  • Om målet är innehåll från samma domän som SWF-filen ligger på beviljas anropet.
  • Om målet är innehåll från en annan domän än den som SWF-filen ligger på, och inget av de tidigare två villkoren har uppfyllts, beviljas inte anropet.

Vid skriptoberoende programsatser (HTTP, HTTPS, mailto, o.s.v.) misslyckas anropet om samtliga av följande villkor uppfyllts:

  • Målet är något av de särskilda nyckelorden "_top" eller "_parent",
  • SWF-filen utgår från en webbsida på en annan domän och
  • SWF-filen är inbäddad med ett annat värde än "always" för parametern allowScriptAccess.

 

Nyckelord: AllowScriptAccess, Flash Player, Flash, Flex, fscommand, ExternalInterface, navigateToURL, sandlåda; tn_16494

Denna produkt är licensierad enligt en Creative Commons Erkännande-Ickekommersiell-Dela Lika 3.0 Unported-licens  Twitter™- och Facebook-inlägg omfattas inte av villkoren i Creative Commons-licensen.

Juridiska meddelanden   |   Onlinesekretesspolicy