Paket | flash.net |
Klass | public class FileReference |
Arv | FileReference EventDispatcher Object |
Underklasser | File |
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9 |
Obs! I Adobe AIR har klassen File, som utökar klassen FileReference, fler funktioner och färre säkerhetsbegränsningar än klassen FileReference.
Du kan skapa FileReference-instanser på följande sätt:
- använd operatorn
new
med konstruktorn FileReference:var myFileReference = new FileReference();
- anropa metoden
FileReferenceList.browse()
som skapar en array med FileRefence-objekt.
Vid en överföringsåtgärd blir alla egenskaper i FileReference-objektet ifyllda med anrop till metoderna FileReference.browse()
eller FileReferenceList.browse()
. Vid en nedladdningsåtgärd fylls egenskapen name
i när select
-händelsen skickas, övriga egenskaper fylls i när händelsen complete
skickas.
Via metoden browse()
öppnas en operativsystemspecifik dialogruta. Där uppmanas användaren att välja en fil att överföra. Via metoden FileReference.browse()
kan användaren välja en enstaka fil. Via metoden FileReferenceList.browse()
kan användaren välja flera filer. Efter ett lyckat anrop till metoden browse()
anropar du metoden FileReference.upload()
för att överföra en fil i taget. Via metoden FileReference.download()
uppmanas användaren att ange en plats att spara filen på och startar nedladdningen från en fjärr-URL.
Med klasserna FileReference och FileReferenceList kan du inte ange en standardfilplats för dialogrutan som genereras av metoderna browse()
eller download()
. Standardplatsen som visas i dialogrutan är den senast öppnade mappen (om den platsen kan bestämmas) eller skrivbordet. Det går inte att läsa från eller skriva i den överförda filen med dessa klasser. De gör inte att SWF-filen som startade överföringen eller nedladdningen kan komma åt den överförda eller laddade ned filen eller filens plats på användarens hårddisk.
Klasserna FileReference och FileReferenceList har heller inga metoder för verifiering. Om verifiering krävs på servrarna kan du ladda ned filer med webbläsarpluginen för Flash ® Player, men det går inte att överföra (med någon spelare) eller ladda ned (med en fristående eller extern spelare). Avlyssna FileReference-händelser för att kontrollera om åtgärder slutförs eller om du måste hantera fel.
För innehåll som körs i Flash Player eller för innehåll som körs i Adobe AIR utanför säkerhetssandlådan application, kan överförings- och nedladdningsåtgärder endast få åtkomst till filer inom den egna domänen och inom domäner som anges av en URL-principfil. Placera en principfil på filservern om innehållet som startar överföringen eller nedladdningen inte kommer från samma domän som filservern.
Tänk på att de nya funktionerna i Flash Player innebär att bara en av följande åtgärder kan vara aktiv åt gången när du publicerar till Flash Player 10: FileReference.browse()
, FileReference.upload()
, FileReference.download()
, FileReference.load()
, FileReference.save()
. Annars genererar Flash Player ett körningsfel (kod 2174). Använd FileReference.cancel()
för att avbryta en pågående åtgärd. Den här begränsningen gäller endast Flash Player 10. Tidigare versioner av Flash Player påverkas inte av den här begränsningen av flera samtidiga åtgärder.
När anrop till metoderna FileReference.browse()
, FileReferenceList.browse()
eller FileReference.download()
körs pausar SWF-filens uppspelning i fristående och externa versioner av Flash Player och i AIR för Linux och Mac OS X 10.1 och tidigare.
Följande exempel på HTTP-begäran POST
skickas från Flash Player till ett serversidesskript om inga parametrar anges:
POST /handler.cfm HTTP/1.1 Accept: text/* Content-Type: multipart/form-data; boundary=----------Ij5ae0ae0KM7GI3KM7 User-Agent: Shockwave Flash Host: www.example.com Content-Length: 421 Connection: Keep-Alive Cache-Control: no-cache ------------Ij5GI3GI3ei4GI3ei4KM7GI3KM7KM7 Content-Disposition: form-data; name="Filename" MyFile.jpg ------------Ij5GI3GI3ei4GI3ei4KM7GI3KM7KM7 Content-Disposition: form-data; name="Filedata"; filename="MyFile.jpg" Content-Type: application/octet-stream FileDataHere ------------Ij5GI3GI3ei4GI3ei4KM7GI3KM7KM7 Content-Disposition: form-data; name="Upload" Submit Query ------------Ij5GI3GI3ei4GI3ei4KM7GI3KM7KM7--
Flash Player skickar följande HTTP-begäran POST
om användaren anger parametrarna "api_sig"
, "api_key"
och "auth_token"
:
POST /handler.cfm HTTP/1.1 Accept: text/* Content-Type: multipart/form-data; boundary=----------Ij5ae0ae0KM7GI3KM7 User-Agent: Shockwave Flash Host: www.example.com Content-Length: 421 Connection: Keep-Alive Cache-Control: no-cache ------------Ij5GI3GI3ei4GI3ei4KM7GI3KM7KM7 Content-Disposition: form-data; name="Filename" MyFile.jpg ------------Ij5GI3GI3ei4GI3ei4KM7GI3KM7KM7 Content-Disposition: form-data; name="api_sig" XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX ------------Ij5GI3GI3ei4GI3ei4KM7GI3KM7KM7 Content-Disposition: form-data; name="api_key" XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX ------------Ij5GI3GI3ei4GI3ei4KM7GI3KM7KM7 Content-Disposition: form-data; name="auth_token" XXXXXXXXXXXXXXXXXXXXXX ------------Ij5GI3GI3ei4GI3ei4KM7GI3KM7KM7 Content-Disposition: form-data; name="Filedata"; filename="MyFile.jpg" Content-Type: application/octet-stream FileDataHere ------------Ij5GI3GI3ei4GI3ei4KM7GI3KM7KM7 Content-Disposition: form-data; name="Upload" Submit Query ------------Ij5GI3GI3ei4GI3ei4KM7GI3KM7KM7--
Relaterade API-element
Egenskap | Definieras med | ||
---|---|---|---|
constructor : Object
En referens till klassobjektet eller konstruktorfunktionen för en given objektinstans. | Object | ||
creationDate : Date [skrivskyddad]
Det datum filen skapades på den lokala disken. | FileReference | ||
creator : String [skrivskyddad]
Macintosh-skapartypen för filen, som endast används i Mac OS-versioner tidigare än Mac OS X. | FileReference | ||
data : ByteArray [skrivskyddad]
ByteArray-objektet som representerar data från den inlästa filen efter ett lyckat anrop till metoden load(). | FileReference | ||
extension : String [skrivskyddad]
Filnamnstillägget. | FileReference | ||
modificationDate : Date [skrivskyddad]
Hämtar det datum filen på den lokala disken ändrades senast. | FileReference | ||
name : String [skrivskyddad]
Filens namn på den lokala disken. | FileReference | ||
permissionStatus : String [statisk] [skrivskyddad]
Avgör om programmet har beviljats åtkomst till filsystemet. | FileReference | ||
size : Number [skrivskyddad]
Filens storlek på den lokala disken, i byte. | FileReference | ||
type : String [skrivskyddad]
Filtypen. | FileReference |
Metod | Definieras med | ||
---|---|---|---|
Skapar ett nytt FileReference-objekt. | FileReference | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Registrerar ett händelseavlyssnarobjekt för ett EventDispatcher-objekt så att avlyssnaren får meddelanden om händelser. | EventDispatcher | ||
Visar en dialogruta för filbläddring där användaren kan markera en fil att överföra. | FileReference | ||
Avbryter en pågående överföring eller nedladdning för FileReference-objektet. | FileReference | ||
Skickar en händelse till händelseflödet. | EventDispatcher | ||
Öppnar en dialogruta som användaren kan använda för att ladda ned en fil från en fjärrserver. | FileReference | ||
Kontrollerar om EventDispatcher-objektet har några avlyssnare registrerade för en viss typ av händelse. | EventDispatcher | ||
Anger om det finns en egenskap angiven för ett objekt. | Object | ||
Anger om en instans av klassen Object finns i prototypkedjan för objektet som anges som parameter. | Object | ||
Börjar ladda ned en lokal som har markerats av en användare. | FileReference | ||
Anger om den angivna egenskapen finns och är uppräkningsbar. | Object | ||
Tar bort en avlyssnare från EventDispatcher-objektet. | EventDispatcher | ||
Begär åtkomst till filsystemet. | FileReference | ||
Öppnar en dialogruta som kan användas för att spara en fil på en lokal dator. | FileReference | ||
Anger tillgänglighet för en dynamisk egenskap för slingåtgärder. | Object | ||
Returnerar det här objektets strängrepresentation, formaterad i enlighet med språkspecifika konventioner. | Object | ||
Returnerar det angivna objektets strängbeteckning. | Object | ||
upload(request:URLRequest, uploadDataFieldName:String = "Filedata", testUpload:Boolean = false):void
Startar överföringen av filen till en fjärrserver. | FileReference | ||
Initiera överföring av en fil till en URL utan kodning. | FileReference | ||
Returnerar det angivna objektets primitiva värde. | Object | ||
Kontrollerar om en händelseavlyssnare är registrerad för det här EventDispatcher-objektet eller något av dess överordnade objekt för den angivna händelsetypen. | EventDispatcher |
Händelse | Sammanfattning | Definieras med | ||
---|---|---|---|---|
[utsändningshändelse] Skickas när Flash Player eller AIR får operativsystemfokus och blir aktivt. | EventDispatcher | |||
Skickas när användaren för över eller laddar ned en fil genom dialogrutan för filbläddring. | FileReference | |||
Skickas när nedladdningen är slutförd eller när överföringen genererar HTTP-statuskoden 200. | FileReference | |||
[utsändningshändelse] Skickas när Flash Player eller AIR förlorar operativsystemfokus och blir inaktivt. | EventDispatcher | |||
Skickas om ett anrop till metoden upload() eller uploadUnencoded() försöker få åtkomst till data via HTTP, och Adobe AIR upptäcker och returnerar statuskoden för begäran. | FileReference | |||
Skickas om en överföring misslyckas och det finns en HTTP-statuskod som beskriver felet. | FileReference | |||
Skickas om överföringen eller nedladdningen misslyckas. | FileReference | |||
Skickas när en överföring eller nedladdning startar. | FileReference | |||
Skickas när programmet begär åtkomst till filsystemet. | FileReference | |||
Skickas periodiskt under filöverföring eller filnedladdning. | FileReference | |||
Skickas när ett anrop till metoden FileReference.upload() eller FileReference.download() försöker överföra en fil till en server eller ladda ned en fil från en server som finns utanför anroparens säkerhetssandlåda. | FileReference | |||
Skickas när användaren markerar en fil för överföring eller nedladdning från dialogrutan för filbläddring. | FileReference | |||
Skickas när data har tagits emot från servern efter en slutförd överföring. | FileReference |
creationDate | egenskap |
creationDate:Date
[skrivskyddad] Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9 |
Det datum filen skapades på den lokala disken. Om objektet inte har fyllts i returneras null
vid anropet som hämtar egenskapens värde.
Obs! Om ett operativsystem saknar egenskapen creationDate
är CreationDate
lika med lastModifiedDate
.
Implementering
public function get creationDate():Date
Utlöser
IllegalOperationError — Om metoden FileReference.browse() , FileReferenceList.browse() eller FileReference.download() inte kunde anropas genereras ett undantag med ett meddelande som anger att funktioner anropades i en felaktig följd eller ett tidigare anrop inte slutfördes. I det här fallet har egenskapen creationDate värdet null .
| |
IOError — Om filinformationen inte är tillgänglig genereras ett undantag med ett meddelande som anger ett I/O-fel.
|
Relaterade API-element
creator | egenskap |
creator:String
[skrivskyddad] Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9 |
Macintosh-skapartypen för filen, som endast används i Mac OS-versioner tidigare än Mac OS X. I Windows och Linux är den här egenskapen null
. Om FileReference-objektets egenskaper inte har fyllts i returneras null
vid anropet som hämtar egenskapens värde.
Implementering
public function get creator():String
Utlöser
IllegalOperationError — Om metoden FileReference.browse() , FileReferenceList.browse() eller FileReference.download() inte kunde anropas på Macintosh-system genereras ett undantag med ett meddelande som anger att funktioner anropades i en felaktig följd eller ett tidigare anrop inte slutfördes. I det här fallet har egenskapen creator värdet null .
|
Relaterade API-element
data | egenskap |
data:ByteArray
[skrivskyddad] Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | Flash Player 10, AIR 1.5 |
ByteArray-objektet som representerar data från den inlästa filen efter ett lyckat anrop till metoden load()
.
Implementering
public function get data():ByteArray
Utlöser
IllegalOperationError — Om metoden load() inte kunde anropas genereras ett undantag med ett meddelande som anger att funktioner anropades i en felaktig följd eller att ett tidigare anrop inte slutfördes. I det här fallet har egenskapen data värdet null .
| |
IOError — Om det inte går att öppna eller läsa filen, eller om ett liknande fel inträffar vid åtkomst av filen, genereras ett undantag med ett meddelande som anger ett I/O-fel. I det här fallet har egenskapen data värdet null .
|
Relaterade API-element
extension | egenskap |
extension:String
[skrivskyddad] Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0 |
Filnamnstillägget.
Ett filnamnstillägg är den del av namnet som följer efter den sista punkten ("."). (Själva punkten är inte en del av tillägget.) Om det inte finns någon punkt i filnamnet är tillägget null
.
Obs! Du ska använda egenskapen extension
för att bestämma filens typ. Använd inte egenskaperna creator
eller type
. Egenskaperna creator
och type
bör inte användas längre. De används i äldre versioner av Mac OS.
Implementering
public function get extension():String
Utlöser
IllegalOperationError — Om referensen inte har initierats.
|
modificationDate | egenskap |
modificationDate:Date
[skrivskyddad] Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9, Flash Player 9 |
Hämtar det datum filen på den lokala disken ändrades senast. Om FileReference-objektets egenskaper inte har fyllts i returneras null
vid anropet som hämtar egenskapens värde.
Implementering
public function get modificationDate():Date
Utlöser
IllegalOperationError — Om metoden FileReference.browse() , FileReferenceList.browse() eller FileReference.download() inte kunde anropas genereras ett undantag med ett meddelande som anger att funktioner anropades i en felaktig följd eller ett tidigare anrop inte slutfördes. I det här fallet har egenskapen modificationDate värdet null .
| |
IOError — Om filinformationen inte är tillgänglig genereras ett undantag med ett meddelande som anger ett I/O-fel.
|
Relaterade API-element
name | egenskap |
name:String
[skrivskyddad] Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9 |
Filens namn på den lokala disken. Om FileReference-objektet inte har fyllts i (av ett giltigt anrop till FileReference.download()
eller FileReference.browse()
) genererar Flash Player ett fel när du försöker hämta värdet för den här egenskapen.
Alla egenskaper i ett FileReference-objekt fylls i med anrop till metoden browse()
. Till skillnad mot övriga FileReference-egenskaper så är egenskapen name
ifylld när händelsen select
skickas vid anrop av metoden download()
.
Implementering
public function get name():String
Utlöser
IllegalOperationError — Om metoden FileReference.browse() , FileReferenceList.browse() eller FileReference.download() inte kunde anropas genereras ett undantag med ett meddelande som anger att funktioner anropades i en felaktig följd eller att ett tidigare anrop inte slutfördes.
|
Relaterade API-element
permissionStatus | egenskap |
size | egenskap |
size:Number
[skrivskyddad] Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9 |
Filens storlek på den lokala disken, i byte.
Obs! I den första versionen av ActionScript 3.0 definierades egenskapen size
som ett uint-objekt, med stöd för filer med en storlek på upp till cirka 4 GB. Den har nu implementerats som ett Number-objekt med stöd för större filer.
Implementering
public function get size():Number
Utlöser
IllegalOperationError — Om metoden FileReference.browse() , FileReferenceList.browse() eller FileReference.download() inte kunde anropas genereras ett undantag med ett meddelande som anger att funktioner anropades i en felaktig följd eller att ett tidigare anrop inte slutfördes.
| |
IOError — Om det inte går att öppna eller läsa filen, eller om ett liknande fel inträffar vid åtkomst av filen, genereras ett undantag med ett meddelande som anger ett I/O-fel.
|
Relaterade API-element
type | egenskap |
type:String
[skrivskyddad] Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9 |
Filtypen.
I Windows och Linux är den här egenskapen filtillägget. I Macintosh är den här egenskapen filtypen med fyra tecken, som bara används i tidigare Mac OS-versioner än Mac OS X. Om FileReference-objektet inte har fyllts i returnerar anrop efter den här egenskapens värde null
.
I Windows, Linux och Mac OS X är detta filtillägg den del av egenskapen name
som följer efter den sista förekomsten av tecknet (.) tecknet – identifierar filtypen.
Implementering
public function get type():String
Utlöser
IllegalOperationError — Om metoden FileReference.browse() , FileReferenceList.browse() eller FileReference.download() inte kunde anropas genereras ett undantag med ett meddelande som anger att funktioner anropades i en felaktig följd eller ett tidigare anrop inte slutfördes. I det här fallet har egenskapen type värdet null .
|
Relaterade API-element
FileReference | () | Konstruktor |
public function FileReference()
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9 |
Skapar ett nytt FileReference-objekt. FileReference representerar en fil på användarens lokala hårddisk när dess egenskaper har fyllts i.
Relaterade API-element
browse | () | metod |
public function browse(typeFilter:Array = null):Boolean
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9 |
Visar en dialogruta för filbläddring där användaren kan markera en fil att överföra. Dialogrutan tillhör användarens operativsystem. Användaren kan välja en fil på den lokala datorn eller från andra system, till exempel via en UNC-sökväg i Windows.
Obs! Klassen File, som finns i Adobe AIR, innehåller metoder för att komma åt fler särskilda systemdialogrutor för filval. De här metoderna är File.browseForDirectory()
, File.browseForOpen()
, File.browseForOpenMultiple()
och File.browseForSave()
.
När du anropar den här metoden och användaren väljer en fil fylls egenskaperna i FileReference-objektet i med den valda filens egenskaper. Varje gång metoden FileReference.browse()
anropas återställs FileReference-objektets egenskaper till den fil som valts av användaren i dialogrutan. Endast en browse()
- eller download()
-session kan utföras i taget (eftersom endast en dialogruta kan anropas i taget).
Med parametern typeFilter
kan du avgöra vilka filer som visas i dialogrutan.
I Flash Player 10 och Flash Player 9 uppdatering 5 kan du endast anropa den här metoden som ett svar på en användarhändelse (i till exempel en händelsehanterare för en musklickning eller en tangentbordstryckningshändelse). Annars resulterar ett anrop till den här metoden i att ett Error-undantag genereras.
Tänk på att de nya funktionerna i Flash Player innebär att bara en av följande åtgärder kan vara aktiv åt gången när du publicerar till Flash Player 10: FileReference.browse()
, FileReference.upload()
, FileReference.download()
, FileReference.load()
, FileReference.save()
. Annars genererar Flash Player ett körningsfel (kod 2174). Använd FileReference.cancel()
för att avbryta en pågående åtgärd. Den här begränsningen gäller endast Flash Player 10. Tidigare versioner av Flash Player påverkas inte av den här begränsningen av flera samtidiga åtgärder.
I Adobe AIR visas inte alltid dialogrutan för filblädddring framför fönster som tillhör ett annat fönster (fönster där egenskapen owner
är något annat än null). Undvik problem med fönsterordning genom att dölja ägda fönster innan den här metoden anropas.
Parametrar
typeFilter:Array (default = null ) — En array med FileFilter-instanser som används för att filtrera filerna som visas i dialogrutan. Om du inte anger parametern visas alla filer. Mer information finns i klassen FileFilte.
|
Boolean — Returnerar true om parametrarna är giltiga och dialogrutan för filbläddring öppnas.
|
Händelser
select: — Skickas när användaren väljer en post i filväljaren för bläddring.
| |
cancel: — Skickas om användaren avbryter bläddringsfönstret för filöverföring.
|
Utlöser
IllegalOperationError — Genereras i följande situationer: 1) Någon annan bläddringssession med FileReference eller FileReferenceList pågår; endast en bläddringssession kan utföras i taget. 2) En inställning i användarens mms.cfg-fil förhindrar denna åtgärd.
| |
ArgumentError — Om arrayen typeFilter innehåller FileFilter-objekt som är felaktigt formaterade genereras ett undantag. Information om korrekt format för FileFilter-objekt finns i klassen FileFilter.
| |
Error — Om metoden inte anropas som svar på en användaråtgärd, som exempelvis en mushändelse eller tangenttryckningshändelse.
|
Relaterade API-element
cancel-händelse
FileReference.download()
FileReferenceList.browse()
File.browseForDirectory()
File.browseForOpen()
File.browseForOpenMultiple()
File.browseForSave()
cancel | () | metod |
public function cancel():void
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9 |
Avbryter en pågående överföring eller nedladdning för FileReference-objektet. Vid anrop av den här metoden skickas inte händelsen cancel
. Händelsen skickas endast om användaren avbryter åtgärden genom att stänga dialogrutan för filöverföring eller -nedladdning.
download | () | metod |
public function download(request:URLRequest, defaultFileName:String = null):void
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9 |
Öppnar en dialogruta som användaren kan använda för att ladda ned en fil från en fjärrserver. Det finns ingen storleksbegränsning för filer som du överför eller laddar ned i Flash Player, men spelaren stöder officiellt nedladdning och överföring upp till 100 MB.
Med metoden download()
öppnas först en dialogruta som tillhör operativsystemet. Där uppmanas användaren att ange ett filnamn och välja en plats att spara filen på på den lokala datorn. När användaren väljer en plats och bekräftar nedladdningen (till exempel genom att klicka på Spara) startar nedladdningen från fjärrservern. Avlyssnare tar emot händelser som visar nedladdningens förlopp och om den slutförs eller misslyckas. Status för dialogrutan och nedladdningsåtgärden efter anropet till download()
kontrolleras genom att koden lyssnar efter händelser som t.ex. cancel
, open
, progress
och complete
.
Funktionerna FileReference.upload()
och FileReference.download()
är inte blockerande Funktionerna returnerar efter att de har anropats, innan filöverföringen är slutförd. Dessutom avbryts överföringar och nedladdningar som inte har slutförts för objektet om FileReference-objektet kommer utanför omfånget. Se därför till att FileReference-objektet är inom omfånget under tiden som överföringen eller nedladdningen förväntas ta.
När filen har laddats ned fylls egenskaperna i FileReference-objektet i med egenskaperna för den lokala filen. Händelsen complete
skickas när nedladdningen är slutförd.
Endast en browse()
- eller download()
-session kan utföras i taget (eftersom endast en dialogruta kan anropas i taget).
Den här metoden stöder nedladdning av alla filtyper med antingen HTTP eller HTTPS.
Du kan inte ansluta till vanligtvis reserverade portar. Du hittar en fullständig lista över spärrade portar i avsnittet ”Begränsa nätverks-API:er” i Utvecklarhandbok för Adobe ActionScript 3.0.
Obs: Om servern kräver användarverifiering kan bara SWF-filer som körs i en webbläsare (det vill säga med webbläsarplugin eller ActiveX-kontroll) öppna en dialogruta där användaren anger användarnamn och lösenord för verifiering, och bara vid nedladdning. För överföringar med pluginen eller med ActiveX-kontrollen och för överföringar och nedladdningar med fristående eller extern spelare misslyckas filöverföringen.
Tänk på Flash Players säkerhetsmodell när du använder den här metoden:
- Inläsning är inte tillåtet om den anropande SWF-filen körs i en otillförlitlig lokal sandlåda.
- Standardinställningen är att inte tillåta åtkomst mellan sandlådor. På en webbplats kan åtkomst till en resurs aktiveras genom att en URL-principfil läggs till.
- Du kan förhindra att metoden används av en SWF-fil genom att ställa in parametern
allowNetworking
iobject
- ochembed
-taggarna på den HTML-sida där SWF-innehållet finns. - I Flash Player 10 och Flash Player 9 uppdatering 5 kan du endast anropa den här metoden som ett svar på en användarhändelse (i till exempel en händelsehanterare för en musklickning eller en tangentbordstryckningshändelse). Annars resulterar ett anrop till den här metoden i att ett Error-undantag genereras.
I Adobe AIR begränsas emellertid inte innehåll i säkerhetssandlådan application
(innehåll som installeras med AIR-programmet) av de här säkerhetsbegränsningarna.
Mer information om säkerhet finns i avsnittet Security på Flash Player Developer Center.
När du hämtar en fil med den här metoden flaggas den som hämtad på operativsystem som flaggar hämtade filer:
- Windows XP Service Pack 2 och senare och på Windows Vista
- Mac OS 10.5 och senare
Vissa operativsystem, som Linux, flaggar inte hämtade filer.
Tänk på att de nya funktionerna i Flash Player innebär att bara en av följande åtgärder kan vara aktiv åt gången när du publicerar till Flash Player 10: FileReference.browse()
, FileReference.upload()
, FileReference.download()
, FileReference.load()
, FileReference.save()
. Annars genererar Flash Player ett körningsfel (kod 2174). Använd FileReference.cancel()
för att avbryta en pågående åtgärd. Den här begränsningen gäller endast Flash Player 10. Tidigare versioner av Flash Player påverkas inte av den här begränsningen av flera samtidiga åtgärder.
I Adobe AIR visas inte alltid dialogrutan för hämtning framför fönster som tillhör ett annat fönster (fönster där egenskapen owner
är något annat än null). Undvik problem med fönsterordning genom att dölja ägda fönster innan den här metoden anropas.
Parametrar
request:URLRequest — Objektet URLRequest. Egenskapen url för URLRequest-objektet måste innehålla URL:en för filen som ska laddas ned till den lokala datorn. Om den här parametern är null genereras ett undantag. Egenskapen requestHeaders för URLRequest-objektet ignoreras. Anpassade HTTP-begäranderubriker stöds inte i filöverföringar. Om du ska skicka parametrarna POST eller GET till servern använder du parametervärdet URLRequest.data och anger URLRequest.method som antingen URLRequestMethod.POST eller URLRequestMethod.GET .
I vissa webbläsare är URL-strängens längd begränsad. I vissa webbläsare får inte längden vara över 256 tecken. | |
defaultFileName:String (default = null ) — Det standardfilnamn som visas i dialogrutan för filen som ska laddas ned. Strängen får inte innehålla följande tecken: / \ : * ? " < > | %
Om du inte anger den här parametern tolkas filnamnet för fjärr-URL:en och används som standardvärde. |
Händelser
open: — Skickas när en nedladdning initieras.
| |
progress: — Skickas periodiskt under filnedladdningen.
| |
complete: — Skickas när filnedladdningen är slutförd.
| |
cancel: — Skickas när användaren stänger dialogrutan.
| |
select: — Skickas när användaren väljer en fil för nedladdning i dialogrutan.
| |
securityError: — Skickas om en nedladdning misslyckas på grund av säkerhetsfel.
| |
ioError: — Skickas av alla följande skäl:
|
Utlöser
IllegalOperationError — Genereras i följande situationer: 1) En annan bläddringssession pågår; endast en bläddringssession kan köras åt gången. 2) Värdet som skickades till request innehåller inte någon giltig sökväg eller något giltigt protokoll. 3) Filnamnet som ska laddas ned innehåller otillåtna tecken. 4) En inställning i användarens mms.cfg-fil förhindrar denna åtgärd.
| |
SecurityError — Lokalt otillförlitligt innehåll kanske inte kan kommunicera med Internet. Du kan undvika problemet genom att omklassificera SWF-filen som lokal med nätverkstjänst eller tillförlitlig. Detta undantag genereras med ett meddelande som anger filnamn och URL som inte är tillgängliga på grund av lokala filsäkerhetsinställningar.
| |
SecurityError — Du kan inte ansluta till vanligtvis reserverade portar. Du hittar en fullständig lista över spärrade portar i avsnittet ”Begränsa nätverks-API:er” i Utvecklarhandbok för Adobe ActionScript 3.0.
| |
ArgumentError — Om url.data har en ByteArray-typ genereras ett undantag. Vid användning av metoderna FileReference.upload() och FileReference.download() kan url.data endast ha typen URLVariables eller String.
| |
MemoryError — Detta fel kan bero på följande: 1) Flash Player kan inte konvertera parametern URLRequest.data från UTF8 till MBCS. Detta fel uppstår om objektet URLRequest som skickas till metoden FileReference.download() är inställt för en GET-åtgärd och om System.useCodePage är angivet med true . 2) Flash Player kan inte tilldela minne för alla POST -data. Detta fel uppstår om objektet URLRequest som skickas till metoden FileReference.download() är inställt för en POST -åtgärd.
| |
Error — Om metoden inte anropas som svar på en användaråtgärd, som exempelvis en mushändelse eller tangenttryckningshändelse.
|
Relaterade API-element
FileReference.browse()
FileReferenceList.browse()
FileReference.upload()
FileReference.save()
Exempel ( Så här använder du exemplet )
download
används. För att köra exempelkoden ändrar du egenskapen uploadURL.url
så att den pekar på befintlig domän och fil, istället för påhittad http://www.[yourDomain].com/SomeFile.pdf. Du kanske även måste kompilera SWF-filen genom att ange Använd bara nätverket för Lokal uppspelningssäkerhet, eller uppdatera Flash Players säkerhetsinställningar så att filen ges nätverksåtkomst.
package { import flash.display.Sprite; import flash.events.*; import flash.net.FileReference; import flash.net.URLRequest; import flash.net.FileFilter; public class FileReference_download extends Sprite { private var downloadURL:URLRequest; private var fileName:String = "SomeFile.pdf"; private var file:FileReference; public function FileReference_download() { downloadURL = new URLRequest(); downloadURL.url = "http://www.[yourDomain].com/SomeFile.pdf"; file = new FileReference(); configureListeners(file); file.download(downloadURL, fileName); } private function configureListeners(dispatcher:IEventDispatcher):void { dispatcher.addEventListener(Event.CANCEL, cancelHandler); dispatcher.addEventListener(Event.COMPLETE, completeHandler); dispatcher.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler); dispatcher.addEventListener(Event.OPEN, openHandler); dispatcher.addEventListener(ProgressEvent.PROGRESS, progressHandler); dispatcher.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler); dispatcher.addEventListener(Event.SELECT, selectHandler); } private function cancelHandler(event:Event):void { trace("cancelHandler: " + event); } private function completeHandler(event:Event):void { trace("completeHandler: " + event); } private function ioErrorHandler(event:IOErrorEvent):void { trace("ioErrorHandler: " + event); } private function openHandler(event:Event):void { trace("openHandler: " + event); } private function progressHandler(event:ProgressEvent):void { var file:FileReference = FileReference(event.target); trace("progressHandler name=" + file.name + " bytesLoaded=" + event.bytesLoaded + " bytesTotal=" + event.bytesTotal); } private function securityErrorHandler(event:SecurityErrorEvent):void { trace("securityErrorHandler: " + event); } private function selectHandler(event:Event):void { var file:FileReference = FileReference(event.target); trace("selectHandler: name=" + file.name + " URL=" + downloadURL.url); } } }
load | () | metod |
public function load():void
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | Flash Player 10, AIR 1.5 |
Börjar ladda ned en lokal som har markerats av en användare. Det finns ingen storleksbegränsning för filer som du överför, läser in eller sparar i Flash Player, men programmet stöder officiellt storlekar upp till 100 MB. När det gäller innehåll som körs i Flash Player måste du anropa metoden FileReference.browse()
eller FileReferenceList.browse()
innan du kan anropa metoden load()
. Innehåll som körs i AIR i programsandlådan kan emellertid anropa metoden load()
för ett File-objekt utan att först anropa metoden browse()
. (Klassen File i AIR utökar klassen FileReference.)
Avlyssnare tar emot händelser som visar överföringens förlopp och om den slutförs eller misslyckas. Du kan använda FilreReferenceList-objekt för att låta användaren välja flera filer att läsa in, men du måste läsa in en fil i taget. Du läser in en fil i taget genom att iterera genom FileReferenceList.fileList
-arrayen med FileReference-objekt.
Adobe AIR innehåller även klassen FileStream, som har fler alternativ för att läsa filer.
Funktionerna FileReference.upload()
, FileReference.download()
, FileReference.load()
och FileReference.save()
är inte blockerande. Funktionerna returnerar efter att de har anropats, innan filöverföringen är slutförd. Dessutom avbryts transaktioner som inte har slutförts för objektet om FileReference-objektet kommer utanför omfånget. Se därför till att FileReference-objektet är inom omfånget den tid som överföringen, nedladdningen, hämtningen eller sparandet förväntas ta.
Om filen läses in som den ska lagras innehållet som en bytearray i data
-egenskapen för FileReference-objektet.
Följande säkerhetsaspekter gäller:
- Inläsning är inte tillåtet om den anropande SWF-filen körs i en otillförlitlig lokal sandlåda.
- Standardinställningen är att inte tillåta åtkomst mellan sandlådor. På en webbplats kan åtkomst till en resurs aktiveras genom att en korsdomänprincipfil läggs till.
- Du kan förhindra att metoden används av en fil genom att ange parametern
allowNetworking
iobject
- ochembed
-taggarna på den HTML-sida där SWF-innehållet finns.
Dessa aspekter gäller emellertid inte för AIR-innehåll i programsandlådan.
När du publicerar till Flash Player 10 eller AIR 1.5 kan bara en av följande åtgärder vara aktiv åt gången: FileReference.browse()
, FileReference.upload()
, FileReference.download()
, FileReference.load()
, FileReference.save()
. Annars genererar programmet ett körningsfel (kod 2174). Använd FileReference.cancel()
för att avbryta en pågående åtgärd. Den här begränsningen gäller endast Flash Player 10 och AIR 1.5. Tidigare versioner av Flash Player eller AIR påverkas inte av den här begränsningen av flera samtidiga åtgärder.
I Adobe AIR visas inte alltid dialogrutan för filblädddring framför fönster som tillhör ett annat fönster (fönster där egenskapen owner
är något annat än null). Undvik problem med fönsterordning genom att dölja ägda fönster innan den här metoden anropas.
Händelser
open: — Skickas när en laddning initieras.
| |
progress: — Skickas periodiskt under filladdningen.
| |
complete: — Skickas när filladdningen är slutförd.
| |
ioError: — Inläsningen misslyckas på grund av ett in-/utdatafel när programmet läser eller skriver filen.
|
Utlöser
IllegalOperationError — Genereras i följande situationer: 1) Någon annan bläddringssession med FileReference eller FileReferenceList pågår; endast en bläddringssession kan utföras i taget. 2) En inställning i användarens mms.cfg-fil förhindrar denna åtgärd.
| |
MemoryError — Detta fel kan uppstå om programmet inte kan tilldela filen minne. Filen kan vara för stor eller också är det tillgängliga minnet för litet.
|
Relaterade API-element
FileReferenceList.browse()
FileReference.data
FileReferenceList.fileList
FileReference.save()
FileStream
Exempel ( Så här använder du exemplet )
var buttonShape:Shape = new Shape(); buttonShape.graphics.beginFill(0x336699); buttonShape.graphics.drawCircle(50, 50, 25); var button = new SimpleButton(buttonShape, buttonShape, buttonShape, buttonShape); addChild(button); var fileRef:FileReference= new FileReference(); button.addEventListener(MouseEvent.CLICK, onButtonClick); function onButtonClick(e:MouseEvent):void { fileRef.browse([new FileFilter("Images", "*.jpg;*.gif;*.png")]); fileRef.addEventListener(Event.SELECT, onFileSelected); } function onFileSelected(e:Event):void { fileRef.addEventListener(Event.COMPLETE, onFileLoaded); fileRef.load(); } function onFileLoaded(e:Event):void { var loader:Loader = new Loader(); loader.loadBytes(e.target.data); addChild(loader); }
requestPermission | () | metod |
public function requestPermission():void
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 24.0 |
Begär åtkomst till filsystemet.
Händelser
PermissionStatus: — skickas när begärd behörighet beviljas/nekas av användaren.
|
save | () | metod |
public function save(data:*, defaultFileName:String = null):void
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | Flash Player 10, AIR 1.5 |
Öppnar en dialogruta som kan användas för att spara en fil på en lokal dator. Det finns ingen storleksbegränsning för filer som du överför eller hämtar i Flash Player, men spelaren stöder officiellt storlekar upp till 100 MB.
Med metoden save()
öppnas först en dialogruta som tillhör operativsystemet. Där uppmanas användaren att ange ett filnamn och välja var filen ska sparas på den lokala datorn. När användaren väljer en plats och bekräftar sparandet (t.ex. genom att klicka på Spara) startar sparandet. Avlyssnare tar emot händelser som visar sparandets förlopp och huruvida det slutförs eller misslyckas. För att kontrollera statusen för dialogrutan och spara-åtgärden efter anropet till save()
måste koden lyssna efter händelser som cancel
, open
, progress
och complete
.
Adobe AIR innehåller även klassen FileStream, som har fler alternativ för att spara filer lokalt.
Funktionerna FileReference.upload()
, FileReference.download()
, FileReference.load()
och FileReference.save()
är inte blockerande. Funktionerna returnerar efter att de har anropats, innan filöverföringen är slutförd. Dessutom avbryts transaktioner som inte har slutförts för objektet om FileReference-objektet kommer utanför omfånget. Se därför till att FileReference-objektet är inom omfånget den tid som överföringen, nedladdningen, hämtningen eller sparandet förväntas ta.
När filen har sparats fylls egenskaperna i FileReference-objektet i med egenskaperna för den lokala filen. Händelsen complete
skickas när sparandet är slutfört.
Endast en browse()
- eller save()
-session i taget kan utföras (eftersom endast en dialogruta i taget kan anropas).
I Flash Player kan du bara anropa den här metoden som ett svar på en användarhändelse (i till exempel en händelsehanterare för en musklickning eller en tangentbordstryckningshändelse). Annars resulterar ett anrop till den här metoden i att ett Error-undantag genereras. Den här begränsningen gäller inte för AIR-innehåll i programsandlådan.
I Adobe AIR visas inte alltid dialogrutan för att spara framför fönster som tillhör ett annat fönster (fönster där egenskapen owner
är något annat än null). Undvik problem med fönsterordning genom att dölja ägda fönster innan den här metoden anropas.
Parametrar
data:* — Data som ska sparas. Data kan vara i ett av flera format och behandlas i enlighet med detta:
| |
defaultFileName:String (default = null ) — Det standardfilnamn som visas i dialogrutan för filen som ska sparas. Strängen får inte innehålla följande tecken: / \ : * ? " < > | %
Om ett File-objekt anropar den här metoden blir filnamnet detsamma som på den fil som File-objektet refererar till. (Klassen AIR File utökar klassen FileReference.) |
Händelser
open: — Skickas när en nedladdning initieras.
| |
progress: — Skickas periodiskt under filnedladdningen.
| |
complete: — Skickas när filnedladdningen är slutförd.
| |
cancel: — Skickas när användaren stänger dialogrutan.
| |
select: — Skickas när användaren väljer en fil för nedladdning i dialogrutan.
| |
ioError: — Skickas om ett in-/utdatafel uppstår när filen läses eller överförs.
|
Utlöser
IllegalOperationError — Genereras i följande situationer: 1) En annan bläddringssession pågår; endast en bläddringssession kan köras åt gången. 2) Filnamnet som ska laddas ned innehåller otillåtna tecken. 3) En inställning i användarens mms.cfg-fil förhindrar denna åtgärd.
| |
ArgumentError — Om data inte är av ByteArray-typ och inte har en toString() -metod, genereras ett undantag. Om data inte är av XML-typ och inte har en toXMLString() -metod, genereras ett undantag.
| |
Error — Om metoden inte anropas som svar på en användaråtgärd, som exempelvis en mushändelse eller tangenttryckningshändelse.
| |
MemoryError — Detta fel kan uppstå om Flash Player inte kan tilldela filen minne. Filen kan vara för stor eller också är det tillgängliga minnet för litet.
|
Relaterade API-element
FileReference.load()
FileReference.data
FileReference.upload()
FileReference.download()
FileStream
Exempel ( Så här använder du exemplet )
MyTextField
) och ett annat textfält, som inte kan redigeras (MyButtonField
), utan som ska fungera som en ”knapp” som svarar på en musklickning. Användaren kan redigera det första textfältet och klicka på knappen för att spara textfältets innehåll i en lokal fil. Musklickningshändelsehanteraren clickhandler
använder metoden FileReference.save()
(för ett FileReference-objekt med namnet MyFileReference
) för att öppna en dialogruta i användarens aktuella operativsystem så att han/hon kan spara innehållet i en lokal fil med ett namn de själv anger.
var MyTextField:TextField = new TextField(); var MyButtonField:TextField = new TextField(); var MyFile:FileReference = new FileReference(); MyTextField.border = true; MyTextField.type = TextFieldType.INPUT; MyButtonField.background = true; MyButtonField.backgroundColor = 0x339933; MyButtonField.x = 150; MyButtonField.height = 20; MyButtonField.text = "Click here to save"; addChild(MyTextField); addChild(MyButtonField); MyButtonField.addEventListener(MouseEvent.CLICK, clickhandler); function clickhandler(e:MouseEvent): void { MyFile.save(MyTextField.text); }
upload | () | metod |
public function upload(request:URLRequest, uploadDataFieldName:String = "Filedata", testUpload:Boolean = false):void
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9 |
Startar överföringen av filen till en fjärrserver. Det finns ingen storleksbegränsning för filer du överför eller laddar ned i Flash Player, men spelaren stöder officiellt nedladdning och överföring upp till 100 MB.Innan du anropar den här metoden måste du anropa metoden FileReference.browse()
eller FileReferenceList.browse()
.
För File-klassen i Adobe AIR, som utökar klassen FileReference, kan du använda metoden upload()
för att överföra filer. För klassen FileReference (används i Flash Player) måste användaren först välja en fil.
Avlyssnare tar emot händelser som visar överföringens förlopp och om den slutförs eller misslyckas. Trots att du kan använda objektet FileReferenceList så att användare kan välja flera filer för överföring måste du överföra filer en i taget. Detta gör du genom att iterera igenom arrayen FileReferenceList.fileList
med FileReference-objekt.
Funktionerna FileReference.upload()
och FileReference.download()
är inte blockerande Funktionerna returnerar efter att de har anropats, innan filöverföringen är slutförd. Dessutom avbryts överföringar och nedladdningar som inte har slutförts för objektet om FileReference-objektet kommer utanför omfånget. Se därför till att FileReference-objektet är inom omfånget under tiden som överföringen eller nedladdningen förväntas ta.
Filen överförs till den URL som anges i parametern url
. URL:en måste vara ett serverskript som är konfigurerat för att ta emot överföringar. I Flash Player överförs filer med HTTP-metoden POST
. I serverskriptet som hanterar överföringen bör en POST
-begäran ingå med följande element:
Content-Type
imultipart/form-data
Content-Disposition
med attributetname
angivet med"Filedata"
som standardvärde och attributetfilename
angivet med namnet på originalfilen- filens binära innehåll.
Du kan inte ansluta till vanligtvis reserverade portar. Du hittar en fullständig lista över spärrade portar i avsnittet ”Begränsa nätverks-API:er” i Utvecklarhandbok för Adobe ActionScript 3.0.
Ett exempel med begäran POST
finns i beskrivningen för parametern uploadDataFieldName
. Du kan skicka parametrarna POST
eller GET
till servern med metoden upload()
. Se beskrivningen för parametern request
.
Om parametern testUpload
är true
och filen som ska överföras är större än ca 10 kB skickas (med Flash Player i Windows) först en testöverföring med POST
utan innehåll för att kontrollera att överföringen fungerar. Därefter skickas en andra åtgärd med POST
som innehåller den faktiska filen. Vid filer som är mindre än 10 kB utförs POST
-överföringen med den faktiska filen på en gång, utan något testförsök. Med Flash Player på Macintosh görs inga testöverföringar med POST
.
Obs: Om servern kräver användarverifiering kan bara SWF-filer som körs i en webbläsare (det vill säga med webbläsarplugin eller ActiveX-kontroll) öppna en dialogruta där användaren anger användarnamn och lösenord för verifiering, och bara vid nedladdning. För överföringar med pluginen eller med ActiveX-kontrollen och för överföringar och nedladdningar med fristående eller extern spelare misslyckas filöverföringen.
Tänk på Flash Players säkerhetsmodell när du använder den här metoden:
- Inläsning är inte tillåtet om den anropande SWF-filen körs i en otillförlitlig lokal sandlåda.
- Standardinställningen är att inte tillåta åtkomst mellan sandlådor. På en webbplats kan åtkomst till en resurs aktiveras genom att en URL-principfil läggs till.
- Du kan förhindra att metoden används av en SWF-fil genom att ställa in parametern
allowNetworking
iobject
- ochembed
-taggarna på den HTML-sida där SWF-innehållet finns.
I Adobe AIR begränsas emellertid inte innehåll i säkerhetssandlådan application
(innehåll som installeras med AIR-programmet) av de här säkerhetsbegränsningarna.
Mer information om säkerhet finns i avsnittet Security på Flash Player Developer Center.
Tänk på att de nya funktionerna i Flash Player innebär att bara en av följande åtgärder kan vara aktiv åt gången när du publicerar till Flash Player 10: FileReference.browse()
, FileReference.upload()
, FileReference.download()
, FileReference.load()
, FileReference.save()
. Annars genererar Flash Player ett körningsfel (kod 2174). Använd FileReference.cancel()
för att avbryta en pågående åtgärd. Den här begränsningen gäller endast Flash Player 10. Tidigare versioner av Flash Player påverkas inte av den här begränsningen av flera samtidiga åtgärder.
Parametrar
request:URLRequest — Objektet URLRequest; egenskapen url i objektet URLRequest måste innehålla URL:en för serverskriptet som är konfigurerat för överföring via HTTP-anropen POST . I vissa webbläsare är URL-strängens längd begränsad. I vissa webbläsare får inte längden vara över 256 tecken. Om den här parametern är null genereras ett undantag. Egenskapen requestHeaders för URLRequest-objektet ignoreras. Anpassade HTTP-begäranrubriker stöds inte i filöverföringar eller inläsningar.
URL:en kan vara HTTP eller HTTPS (för säker överföring). När du ska använda HTTPS måste du använda en HTTPS-url i parametern Du skickar parametrarna | |
uploadDataFieldName:String (default = "Filedata ") — Fältnamnet som föregår fildata i överföringen med POST . Värdet för uploadDataFieldName får inte vara null eller en tom sträng. Standardvärdet för uploadDataFieldName är "Filedata" enligt följande exempel med begäran POST :
Content-Type: multipart/form-data; boundary=AaB03x --AaB03x Content-Disposition: form-data; name="Filedata"; filename="example.jpg" Content-Type: application/octet-stream ... contents of example.jpg ... --AaB03x-- | |
testUpload:Boolean (default = false ) — En inställning som begär en testfilöverföring. Om testUpload är true kommer Flash Player att göra en testfilöverföring av POST med innehållslängden 0 för filer som är större än 10 kB. Syftet med testöverföringen är att kontrollera att den riktiga filöverföringen och serververifieringen (om någon) kommer att lyckas. Testöverföringar är tillgängliga endast för Windows-spelare.
|
Händelser
open: — Skickas när en överföring initieras.
| |
progress: — Skickas periodiskt under filöverföringen.
| |
complete: — Skickas när filöverföringen är slutförd.
| |
uploadCompleteData: — Skickas när data har tagits emot från servern efter en slutförd filöverföring.
| |
securityError: — Skickas om en överföring misslyckas på grund av säkerhetsöverträdelse.
| |
httpStatus: — Skickas när en överföring misslyckas på grund av ett HTTP-fel.
| |
httpResponseStatus: — Överföringen slutförs och servern returnerar en svars-URL och svarsrubriker.
| |
ioError: — Anropas i följande situationer:
|
Utlöser
SecurityError — Lokala otillförlitliga SWF-filer kanske inte kan kommunicera med Internet. Du kan undvika problemet genom att omklassificera SWF-filen som lokal med nätverkstjänst eller tillförlitlig. Detta undantag genereras med ett meddelande som anger filnamn och URL som inte är tillgängliga.
| |
SecurityError — Du kan inte ansluta till vanligtvis reserverade portar. Du hittar en fullständig lista över spärrade portar i avsnittet ”Begränsa nätverks-API:er” i Utvecklarhandbok för Adobe ActionScript 3.0.
| |
IllegalOperationError — Genereras i följande situationer: 1) Någon annan bläddringssession med FileReference eller FileReferenceList pågår; endast en bläddringssession kan utföras i taget. 2) URL-parametern är ingen giltig sökväg eller inget giltigt protokoll. Filöverföringen måste användas med HTTP och nedladdningen måste användas med FTP eller HTTP. 3) Parametern uploadDataFieldName är angiven som null . 4) En inställning i användarens mms.cfg-fil förhindrar denna åtgärd.
| |
ArgumentError — Genereras i följande situationer: 1) Parametern uploadDataFieldName är en tom sträng. 2) url.data har typen ByteArray. Vid användning av metoderna FileReference.upload() och FileReference.download() kan url.data endast ha typen URLVariables eller String. 3) I AIR-körningen (i säkerhetssandlådan application) är metoden för URLRequest inte GET eller POST (använd uploadEncoded() i stället).
| |
MemoryError — Detta fel kan bero på följande: 1) Flash Player kan inte konvertera parametern URLRequest.data från UTF8 till MBCS. Detta fel uppstår om objektet URLRequest som skickas till FileReference.upload() är inställt för en GET-åtgärd och om System.useCodePage är angivet med true . 2) Flash Player kan inte tilldela minne för alla POST -data. Detta fel uppstår om objektet URLRequest som skickas till FileReference.upload() är inställt för en POST -åtgärd.
|
Relaterade API-element
uploadUnencoded | () | metod |
public function uploadUnencoded(request:URLRequest):void
Körningsmiljöversioner: | AIR 1.0 |
Initiera överföring av en fil till en URL utan kodning. Medan metoden upload()
kodar filen i ett formulärdataomslag, skickar metoden uploadUnencoded()
filinnehållet som det är i HTTP-begäranstexten. Använd metoden uploadUnencoded() om de data du vill skicka redan har kodats i ett format som den mottagande servern kan hantera. Oftast ska du använda metoden uploadeUnencoded()
med metoden HTTP/WebDAV PUT
.
Parametrar
request:URLRequest — Objektet URLRequest; egenskapen url i objektet URLRequest måste innehålla URL:en för serverskriptet som är konfigurerat för överföring via HTTP-anropen POST . I vissa webbläsare är URL-strängens längd begränsad. I vissa webbläsare får inte längden vara över 256 tecken. Om den här parametern är null genereras ett undantag.
URL:en kan vara HTTP eller HTTPS (för säker överföring). När du ska använda HTTPS måste du använda en HTTPS-url i parametern Du skickar parametrarna |
Händelser
open: — Skickas när en överföring initieras.
| |
progress: — Skickas periodiskt under filöverföringen.
| |
complete: — Skickas när filöverföringen är slutförd.
| |
uploadCompleteData: — Skickas när data har tagits emot från servern efter en slutförd filöverföring.
| |
securityError: — Skickas om en överföring misslyckas på grund av säkerhetsöverträdelse.
| |
httpStatus: — Skickas när en överföring misslyckas på grund av ett HTTP-fel.
| |
httpResponseStatus: — Överföringen slutförs och servern returnerar en svars-URL och svarsrubriker.
| |
ioError: — Anropas i följande situationer:
|
Utlöser
SecurityError — Lokala otillförlitliga SWF-filer kanske inte kan kommunicera med Internet. Du kan undvika problemet genom att omklassificera SWF-filen som lokal med nätverkstjänst eller tillförlitlig. Detta undantag genereras med ett meddelande som anger filnamn och URL som inte är tillgängliga.
| |
IllegalOperationError — Genereras i följande situationer: 1) Någon annan bläddringssession med FileReference eller FileReferenceList pågår; endast en bläddringssession kan utföras i taget. 2) URL-parametern är ingen giltig sökväg eller inget giltigt protokoll. HTTP måste användas vid filöverföring.
|
Relaterade API-element
cancel | Händelse |
flash.events.Event
egenskap Event.type =
flash.events.Event.CANCEL
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9 |
Skickas när användaren för över eller laddar ned en fil genom dialogrutan för filbläddring. Flash Player skickar inte den här händelsen om användaren avbryter en överföring eller nedladdning på andra sätt (stänger webbläsaren eller avslutar det aktuella programmet).
Event.CANCEL
-konstanten definierar värdet på type
-egenskapen i ett cancel
-händelseobjekt.
Den här händelsen har följande egenskaper:
Egenskap | Värde |
---|---|
bubbles | false |
cancelable | false ; det finns inget standardbeteende att avbryta. |
currentTarget | Det objekt som aktivt behandlar Event-objektet med en händelseavlyssnare. |
target | En referens till det objekt vars åtgärd avbryts. |
Exempel ( Så här använder du exemplet )
cancel
används. För att köra exempelkoden ändrar du egenskapen uploadURL.url
så att den pekar på befintlig domän och fil, istället för påhittad http://www.[yourDomain].com/SomeFile.pdf. Du kanske även måste kompilera SWF-filen genom att ange Använd bara nätverket för Lokal uppspelningssäkerhet, eller uppdatera Flash Players säkerhetsinställningar så att filen ges nätverksåtkomst.
package { import flash.display.Sprite; import flash.events.*; import flash.net.FileReference; import flash.net.URLRequest; public class FileReference_event_cancel extends Sprite { private var downloadURL:URLRequest; private var fileName:String = "SomeFile.pdf"; private var file:FileReference; public function FileReference_event_cancel() { downloadURL = new URLRequest(); downloadURL.url = "http://www.[yourDomain].com/SomeFile.pdf"; file = new FileReference(); file.addEventListener(Event.CANCEL, cancelHandler); file.download(downloadURL, fileName); } private function cancelHandler(event:Event):void { trace("cancelHandler: " + event); } } }
complete | Händelse |
flash.events.Event
egenskap Event.type =
flash.events.Event.COMPLETE
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9 |
Skickas när nedladdningen är slutförd eller när överföringen genererar HTTP-statuskoden 200. Vid filnedladdning skickas händelsen när Flash Player eller Adobe AIR har laddat ned hela filen till disken. Vid filöverföring skickas händelsen när Flash Player eller Adobe AIR har tagit emot HTTP-statuskod 200 från servern som tar emot överföringen.
Event.COMPLETE
-konstanten definierar värdet på type
-egenskapen i ett complete
-händelseobjekt.
Den här händelsen har följande egenskaper:
Egenskap | Värde |
---|---|
bubbles | false |
cancelable | false ; det finns inget standardbeteende att avbryta. |
currentTarget | Det objekt som aktivt behandlar Event-objektet med en händelseavlyssnare. |
target | Det nätverksobjekt som har lästs in. |
Exempel ( Så här använder du exemplet )
complete
används. För att köra exempelkoden ändrar du egenskapen uploadURL.url
så att den pekar på befintlig domän och fil, istället för påhittad http://www.[yourDomain].com/SomeFile.pdf. Du kanske även måste kompilera SWF-filen genom att ange Använd bara nätverket för Lokal uppspelningssäkerhet, eller uppdatera Flash Players säkerhetsinställningar så att filen ges nätverksåtkomst.
package { import flash.display.Sprite; import flash.events.*; import flash.net.FileReference; import flash.net.URLRequest; public class FileReference_event_complete extends Sprite { private var downloadURL:URLRequest; private var fileName:String = "SomeFile.pdf"; private var file:FileReference; public function FileReference_event_complete() { downloadURL = new URLRequest(); downloadURL.url = "http://www.[yourDomain].com/SomeFile.pdf"; file = new FileReference(); configureListeners(file); file.download(downloadURL, fileName); } private function configureListeners(dispatcher:IEventDispatcher):void { dispatcher.addEventListener(Event.CANCEL, cancelHandler); dispatcher.addEventListener(Event.COMPLETE, completeHandler); dispatcher.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler); dispatcher.addEventListener(Event.OPEN, openHandler); dispatcher.addEventListener(ProgressEvent.PROGRESS, progressHandler); dispatcher.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler); dispatcher.addEventListener(Event.SELECT, selectHandler); } private function cancelHandler(event:Event):void { trace("cancelHandler: " + event); } private function completeHandler(event:Event):void { trace("completeHandler: " + event); } private function ioErrorHandler(event:IOErrorEvent):void { trace("ioErrorHandler: " + event); } private function openHandler(event:Event):void { trace("openHandler: " + event); } private function progressHandler(event:ProgressEvent):void { var file:FileReference = FileReference(event.target); trace("progressHandler name=" + file.name + " bytesLoaded=" + event.bytesLoaded + " bytesTotal=" + event.bytesTotal); } private function securityErrorHandler(event:SecurityErrorEvent):void { trace("securityErrorHandler: " + event); } private function selectHandler(event:Event):void { var file:FileReference = FileReference(event.target); trace("selectHandler: name=" + file.name + " URL=" + downloadURL.url); } } }
Relaterade API-element
httpResponseStatus | Händelse |
flash.events.HTTPStatusEvent
egenskap HTTPStatusEvent.type =
flash.events.HTTPStatusEvent.HTTP_RESPONSE_STATUS
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, AIR 1.0 |
Skickas om ett anrop till metoden upload()
eller uploadUnencoded()
försöker få åtkomst till data via HTTP, och Adobe AIR upptäcker och returnerar statuskoden för begäran.
httpStatus
-händelsen levereras httpResponseStatus
-händelsen innan eventuella svarsdata. Dessutom inkluderar httpResponseStatus
-händelsen värdena för responseHeaders
och responseURL
-egenskaperna (som är odefinierade i en httpStatus
-händelse). Observera att httpResponseStatus
-händelsen (om sådan finns) skickas före (och utöver) händelserna complete
eller error
.
HTTPStatusEvent.HTTP_RESPONSE_STATUS
-konstanten definierar värdet på type
-egenskapen i ett httpResponseStatus
-händelseobjekt.
Den här händelsen har följande egenskaper:
Egenskap | Värde |
---|---|
bubbles | false |
cancelable | false ; det finns inget standardbeteende att avbryta. |
currentTarget | Det objekt som aktivt behandlar Event-objektet med en händelseavlyssnare. |
responseURL | URL:en som svaret returnerades från. |
responseHeaders | Svarsrubriken som svaret returnerade har en array med URLRequestHeader-objekt. |
status | Den HTTP-statuskod som returneras av servern. |
redirected | Om svaret är resultatet av en omdirigering. |
target | Nätverksobjektet tar emot en HTTP-statuskod. |
Relaterade API-element
httpStatus | Händelse |
flash.events.HTTPStatusEvent
egenskap HTTPStatusEvent.type =
flash.events.HTTPStatusEvent.HTTP_STATUS
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9 |
Skickas om en överföring misslyckas och det finns en HTTP-statuskod som beskriver felet. Händelsen httpStatus
skickas, följt av händelsen ioError
.
Händelsen httpStatus
skickas endast vid överföringsfel. Den här händelsen kan inte användas vid nedladdningsfel för innehåll som körs i Flash Player. Om en nedladdning misslyckas på grund av ett HTTP-fel rapporteras felet som ett I/O-fel.
HTTPStatusEvent.HTTP_STATUS
definierar värdet på type
-egenskapen i ett httpStatus
-händelseobjekt.
Den här händelsen har följande egenskaper:
Egenskap | Värde |
---|---|
bubbles | false |
cancelable | false ; det finns inget standardbeteende att avbryta. |
currentTarget | Det objekt som aktivt behandlar Event-objektet med en händelseavlyssnare. |
status | Den HTTP-statuskod som returneras av servern. |
target | Nätverksobjektet tar emot en HTTP-statuskod. |
Relaterade API-element
ioError | Händelse |
flash.events.IOErrorEvent
egenskap IOErrorEvent.type =
flash.events.IOErrorEvent.IO_ERROR
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9 |
Skickas om överföringen eller nedladdningen misslyckas. En filöverföring kan misslyckas på grund av någon av följande orsaker:
- Ett in-/utdatafel inträffar när spelaren läser från, skriver i eller sänder filen.
- SWF-filen försöker överföra en fil till en server som kräver verifiering (t.ex. användarnamn och lösenord). Under överföring kan användaren inte ange lösenord i Flash Player eller Adobe AIR. Om en SWF-fil försöker överföra en fil till en server som kräver verifiering misslyckas överföringen.
- SWF-filen försöker ladda ned en fil från en server som kräver verifiering i den fristående eller externa spelaren. Under nedladdning kan användaren inte ange lösenord i den fristående eller externa spelaren. Om en SWF-fil i dessa spelare försöker ladda ned en fil från en server som kräver verifiering misslyckas nedladdningen. Filnedladdning kan bara göras i ActiveX-kontrollen, pluginspelare i webbläsare och Adobe AIR-körningen.
- Värdet som skickas till parametern
url
i metodenupload()
innehåller ett ogiltigt protokoll. Protokollet måste vara HTTP eller HTTPS.
Viktigt! Endast med program som körs i en webbläsare – det vill säga med webbläsar-pluginprogrammet eller ActiveX-kontrollen – samt med innehåll som körs i Adobe AIR, kan en dialogruta öppnas där användaren uppmanas att ange användarnamn och lösenord för autentisering, och då endast för nedladdning. Filöverföringen misslyckas vid överföringar med plugin- eller ActiveX-kontrollversionen av Flash Player och vid överföringar eller nedladdningar med antingen fristående eller extern spelare.
Definierar värdet för ettioError
-händelseobjekts type
-egenskap.
Den här händelsen har följande egenskaper:
Egenskap | Värde |
---|---|
bubbles | false |
cancelable | false ; det finns inget standardbeteende att avbryta. |
currentTarget | Det objekt som aktivt behandlar Event-objektet med en händelseavlyssnare. |
errorID | Ett referensnummer som associeras med det specifika felet (enbart AIR). |
target | Objektet är med om ett in-/utdatafel. |
text | Text som visas som felmeddelande. |
Relaterade API-element
open | Händelse |
flash.events.Event
egenskap Event.type =
flash.events.Event.OPEN
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9 |
Skickas när en överföring eller nedladdning startar.
Event.OPEN
-konstanten definierar värdet på type
-egenskapen i ett open
-händelseobjekt.
Den här händelsen har följande egenskaper:
Egenskap | Värde |
---|---|
bubbles | false |
cancelable | false ; det finns inget standardbeteende att avbryta. |
currentTarget | Det objekt som aktivt behandlar Event-objektet med en händelseavlyssnare. |
target | Det nätverksobjekt som har öppnat en anslutning. |
Exempel ( Så här använder du exemplet )
download
används. För att köra exempelkoden ändrar du egenskapen uploadURL.url
så att den pekar på befintlig domän och fil, istället för påhittad http://www.[yourDomain].com/SomeFile.pdf. Du kanske även måste kompilera SWF-filen genom att ange Använd bara nätverket för Lokal uppspelningssäkerhet, eller uppdatera Flash Players säkerhetsinställningar så att filen ges nätverksåtkomst.
package { import flash.display.Sprite; import flash.events.*; import flash.net.FileReference; import flash.net.URLRequest; import flash.net.FileFilter; public class FileReference_download extends Sprite { private var downloadURL:URLRequest; private var fileName:String = "SomeFile.pdf"; private var file:FileReference; public function FileReference_download() { downloadURL = new URLRequest(); downloadURL.url = "http://www.[yourDomain].com/SomeFile.pdf"; file = new FileReference(); configureListeners(file); file.download(downloadURL, fileName); } private function configureListeners(dispatcher:IEventDispatcher):void { dispatcher.addEventListener(Event.CANCEL, cancelHandler); dispatcher.addEventListener(Event.COMPLETE, completeHandler); dispatcher.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler); dispatcher.addEventListener(Event.OPEN, openHandler); dispatcher.addEventListener(ProgressEvent.PROGRESS, progressHandler); dispatcher.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler); dispatcher.addEventListener(Event.SELECT, selectHandler); } private function cancelHandler(event:Event):void { trace("cancelHandler: " + event); } private function completeHandler(event:Event):void { trace("completeHandler: " + event); } private function ioErrorHandler(event:IOErrorEvent):void { trace("ioErrorHandler: " + event); } private function openHandler(event:Event):void { trace("openHandler: " + event); } private function progressHandler(event:ProgressEvent):void { var file:FileReference = FileReference(event.target); trace("progressHandler name=" + file.name + " bytesLoaded=" + event.bytesLoaded + " bytesTotal=" + event.bytesTotal); } private function securityErrorHandler(event:SecurityErrorEvent):void { trace("securityErrorHandler: " + event); } private function selectHandler(event:Event):void { var file:FileReference = FileReference(event.target); trace("selectHandler: name=" + file.name + " URL=" + downloadURL.url); } } }
Relaterade API-element
permissionStatus | Händelse |
flash.events.PermissionEvent
egenskap PermissionEvent.type =
flash.events.PermissionEvent.PERMISSION_STATUS
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 24.0 |
Skickas när programmet begär åtkomst till filsystemet. Kontrollera värdet för egenskapen status
för att avgöra om behörighet beviljades eller nekades
Relaterade API-element
progress | Händelse |
flash.events.ProgressEvent
egenskap ProgressEvent.type =
flash.events.ProgressEvent.PROGRESS
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9 |
Skickas periodiskt under filöverföring eller filnedladdning. Händelsen progress
skickas medan Flash Player överför databyte till en server och aktiveras periodiskt under överföringen även om överföringen slutligen misslyckas. För att avgöra om och när filöverföringen faktiskt är lyckad och slutförd avlyssnas händelsen complete
.
I vissa fall tas inte händelserna progress
emot. När t.ex. filen som överförs är mycket liten eller nedladdningen eller överföringen genomförs mycket snabbt kanske händelsen progress
inte skickas.
Filöverföringens förlopp kan inte avgöras på Macintosh-plattformar tidigare än OS X 10.3. Händelsen progress
anropas vid överföringen, men värdet för egenskapen bytesLoaded
i progress-händelsen är -1, vilket anger att förloppet inte kan avgöras.
progress
-händelseobjekts type
-egenskap.
Den här händelsen har följande egenskaper:
Egenskap | Värde |
---|---|
bubbles | false |
bytesLoaded | Antalet objekt eller byte som har lästs in när avlyssnaren bearbetar händelsen. |
bytesTotal | Det totala antalet objekt eller byte som kommer att ha lästs in om inläsningen lyckas. |
cancelable | false ; det finns inget standardbeteende att avbryta. |
currentTarget | Det objekt som aktivt behandlar Event-objektet med en händelseavlyssnare. |
target | Objektet rapporterar förlopp. |
Exempel ( Så här använder du exemplet )
progress
används. För att köra exempelkoden ändrar du egenskapen uploadURL.url
så att den pekar på befintlig domän och fil, istället för påhittad http://www.[yourDomain].com/SomeFile.pdf. Du kanske även måste kompilera SWF-filen genom att ange Använd bara nätverket för Lokal uppspelningssäkerhet, eller uppdatera Flash Players säkerhetsinställningar så att filen ges nätverksåtkomst.
package { import flash.display.Sprite; import flash.events.*; import flash.net.FileReference; import flash.net.URLRequest; public class FileReference_event_progress extends Sprite { private var downloadURL:URLRequest; private var fileName:String = "SomeFile.pdf"; private var file:FileReference; public function FileReference_event_progress() { downloadURL = new URLRequest(); downloadURL.url = "http://www.[yourDomain].com/SomeFile.pdf"; file = new FileReference(); file.addEventListener(ProgressEvent.PROGRESS, progressHandler); file.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler); file.addEventListener(Event.COMPLETE, completeHandler); file.download(downloadURL, fileName); } private function progressHandler(event:ProgressEvent):void { var file:FileReference = FileReference(event.target); trace("progressHandler: name=" + file.name + " bytesLoaded=" + event.bytesLoaded + " bytesTotal=" + event.bytesTotal); } private function ioErrorHandler(event:IOErrorEvent):void { trace("ioErrorHandler: " + event); } private function completeHandler(event:Event):void { trace("completeHandler: " + event); } } }
Relaterade API-element
securityError | Händelse |
flash.events.SecurityErrorEvent
egenskap SecurityErrorEvent.type =
flash.events.SecurityErrorEvent.SECURITY_ERROR
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9 |
Skickas när ett anrop till metoden FileReference.upload()
eller FileReference.download()
försöker överföra en fil till en server eller ladda ned en fil från en server som finns utanför anroparens säkerhetssandlåda. Värdet för textegenskapen som beskriver det specifika felet som uppstod är vanligtvis "securitySandboxError"
. Den anropande SWF-filen kan ha försökt använda en SWF-fil som är utanför dess domän utan att ha behörighet att göra det. Du kan försöka åtgärda felet med en URL-principfil.
I Adobe AIR gäller de här säkerhetsbegränsningarna inte innehåll i säkerhetssandlådan application.
I Adobe AIR gäller de här säkerhetsbegränsningarna inte innehåll i säkerhetssandlådan application.
KonstantenSecurityErrorEvent.SECURITY_ERROR
definierar värdet för ett securityError
-händelseobjekts type
-egenskap.
Den här händelsen har följande egenskaper:
Egenskap | Värde |
---|---|
bubbles | false |
cancelable | false ; det finns inget standardbeteende att avbryta. |
currentTarget | Det objekt som aktivt behandlar Event-objektet med en händelseavlyssnare. |
target | Nätverksobjektet rapporterar säkerhetsfelet. |
text | Text som visas som felmeddelande. |
Relaterade API-element
select | Händelse |
flash.events.Event
egenskap Event.type =
flash.events.Event.SELECT
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9 |
Skickas när användaren markerar en fil för överföring eller nedladdning från dialogrutan för filbläddring. (Den här dialogrutan öppnas vid anrop av metoden FileReference.browse()
, FileReferenceList.browse()
eller FileReference.download()
.) När användaren väljer en fil och bekräftar operationen (till exempel genom att klicka på OK) fylls egenskaperna för FileReference-objektet i.
select
-händelsen fungerar på något olika sätt beroende på av vilken metod den aktiveras för innehåll som körs i Flash Player eller utanför säkerhetssandlådan application i Adobe AIR-körningen. Om select
-händelsen skickas efter ett anrop till browse()
kan alla egenskaperna för FileReference-objektet läsas av Flash Player eller AIR-programmet, eftersom filen som användaren har valt finns i det lokala filsystemet. Om select
-händelsen inträffar efter ett anrop till download()
kan endast egenskapen name
läsas av Flash Player eller AIR-programmet, eftersom filen ännu inte har laddats ned till det lokala filsystemet när select
-händelsen skickas. När filen har laddats ned och complete
-händelsen har skickats kan Flash Player eller AIR-programmet läsa alla egenskaper i FileReference-objektet.
Event.SELECT
-konstanten definierar värdet på type
-egenskapen i ett select
-händelseobjekt.
Den här händelsen har följande egenskaper:
Egenskap | Värde |
---|---|
bubbles | false |
cancelable | false ; det finns inget standardbeteende att avbryta. |
currentTarget | Det objekt som aktivt behandlar Event-objektet med en händelseavlyssnare. |
target | Objektet för vilket ett objekt har valts. |
Exempel ( Så här använder du exemplet )
select
används. För att köra exempelkoden ändrar du egenskapen uploadURL.url
så att den pekar på befintlig domän och fil, istället för påhittad http://www.[yourDomain].com/SomeFile.pdf. Du kanske även måste kompilera SWF-filen genom att ange Använd bara nätverket för Lokal uppspelningssäkerhet, eller uppdatera Flash Players säkerhetsinställningar så att filen ges nätverksåtkomst. Om det här exemplet ska kunna köras från din dator måste servern också ha en crossdomain.xml-fil registrerad. Om ioErrorHandler()
-funktionen utlöses behöver du antagligen uppdatera den tillhandahållna uploadURL
med en giltig URL som är konfigurerad att ta emot överföringar.
package { import flash.display.Sprite; import flash.events.*; import flash.net.FileReference; import flash.net.URLRequest; public class FileReference_event_select extends Sprite { private var uploadURL:URLRequest; private var file:FileReference; public function FileReference_event_select() { uploadURL = new URLRequest(); uploadURL.url = "http://www.[yourDomain].com/yourUploadHandlerScript.cfm"; file = new FileReference(); file.addEventListener(Event.SELECT, selectHandler); file.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler); file.addEventListener(ProgressEvent.PROGRESS, progressHandler); file.addEventListener(Event.COMPLETE, completeHandler); file.browse(); } private function selectHandler(event:Event):void { var file:FileReference = FileReference(event.target); trace("selectHandler: name=" + file.name + " URL=" + uploadURL.url); file.upload(uploadURL); } private function ioErrorHandler(event:IOErrorEvent):void { trace("ioErrorHandler: " + event); } private function progressHandler(event:ProgressEvent):void { var file:FileReference = FileReference(event.target); trace("progressHandler: name=" + file.name + " bytesLoaded=" + event.bytesLoaded + " bytesTotal=" + event.bytesTotal); } private function completeHandler(event:Event):void { trace("completeHandler: " + event); } } }
uploadCompleteData | Händelse |
flash.events.DataEvent
egenskap DataEvent.type =
flash.events.DataEvent.UPLOAD_COMPLETE_DATA
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9.0.28.0 |
Skickas när data har tagits emot från servern efter en slutförd överföring. Händelsen skickas inte om data inte returneras från servern.
Definierar värdet för ettuploadCompleteData
-händelseobjekts type
-egenskap.
Den här händelsen har följande egenskaper:
Egenskap | Värde |
---|---|
bubbles | false |
cancelable | false ; det finns inget standardbeteende att avbryta. |
currentTarget | Det objekt som aktivt behandlar Event-objektet med en händelseavlyssnare. |
data | De rådata som returneras från servern efter en slutförd överföring. |
target | FileReference-objektet tar emot data efter en slutförd överföring. |
Obs! För att köra exempelkoden ändrar du egenskapen uploadURL.url så att den pekar på befintlig URL. URL:en måste peka till filen yourUploadHandlerScript.cfm
i rotkatalogen för angiven URL. Beroende på den konfigurering som används kanske du även måste kompilera SWF-filen genom att ange Använd bara nätverket för Lokal uppspelningssäkerhet, eller uppdatera Flash Players säkerhetsinställningar så att filen ges nätverksåtkomst.
package { import flash.display.Sprite; import flash.events.*; import flash.net.FileFilter; import flash.net.FileReference; import flash.net.URLRequest; public class FileReferenceExample extends Sprite { private var uploadURL:URLRequest; private var file:FileReference; public function FileReferenceExample() { uploadURL = new URLRequest(); uploadURL.url = "http://www.[yourDomain].com/yourUploadHandlerScript.cfm"; file = new FileReference(); configureListeners(file); file.browse(getTypes()); } private function configureListeners(dispatcher:IEventDispatcher):void { dispatcher.addEventListener(Event.CANCEL, cancelHandler); dispatcher.addEventListener(Event.COMPLETE, completeHandler); dispatcher.addEventListener(HTTPStatusEvent.HTTP_STATUS, httpStatusHandler); dispatcher.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler); dispatcher.addEventListener(Event.OPEN, openHandler); dispatcher.addEventListener(ProgressEvent.PROGRESS, progressHandler); dispatcher.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler); dispatcher.addEventListener(Event.SELECT, selectHandler); dispatcher.addEventListener(DataEvent.UPLOAD_COMPLETE_DATA,uploadCompleteDataHandler); } private function getTypes():Array { var allTypes:Array = new Array(getImageTypeFilter(), getTextTypeFilter()); return allTypes; } private function getImageTypeFilter():FileFilter { return new FileFilter("Images (*.jpg, *.jpeg, *.gif, *.png)", "*.jpg;*.jpeg;*.gif;*.png"); } private function getTextTypeFilter():FileFilter { return new FileFilter("Text Files (*.txt, *.rtf)", "*.txt;*.rtf"); } private function cancelHandler(event:Event):void { trace("cancelHandler: " + event); } private function completeHandler(event:Event):void { trace("completeHandler: " + event); } private function uploadCompleteDataHandler(event:DataEvent):void { trace("uploadCompleteData: " + event); } private function httpStatusHandler(event:HTTPStatusEvent):void { trace("httpStatusHandler: " + event); } private function ioErrorHandler(event:IOErrorEvent):void { trace("ioErrorHandler: " + event); } private function openHandler(event:Event):void { trace("openHandler: " + event); } private function progressHandler(event:ProgressEvent):void { var file:FileReference = FileReference(event.target); trace("progressHandler name=" + file.name + " bytesLoaded=" + event.bytesLoaded + " bytesTotal=" + event.bytesTotal); } private function securityErrorHandler(event:SecurityErrorEvent):void { trace("securityErrorHandler: " + event); } private function selectHandler(event:Event):void { var file:FileReference = FileReference(event.target); trace("selectHandler: name=" + file.name + " URL=" + uploadURL.url); file.upload(uploadURL); } } }
Tue Jun 12 2018, 01:40 PM Z