Guide de référence ActionScript® 3.0 pour la plate-forme Adobe® Flash®
Accueil  |  Masquer la liste des packages et des classes |  Packages  |  Classes  |  Nouveautés  |  Index  |  Annexes  |  Pourquoi existe-t-il du contenu en anglais ?
Filtres : AIR 30.0 et versions antérieures, Flash Player 30.0 et versions antérieures, Flash Lite 4
Flex 4.6 et versions antérieures, Flash Pro CS6 et versions antérieures
Masquer les filtres
flash.net 

FileReference  - AS3

Packagesx

Niveau supérieur
adobe.utils
air.desktop
air.net
air.update
air.update.events
coldfusion.air
coldfusion.air.errors
coldfusion.air.events
coldfusion.service
coldfusion.service.events
coldfusion.service.mxml
com.adobe.acm.solutions.authoring.domain.extensions
com.adobe.acm.solutions.ccr.domain.extensions
com.adobe.consulting.pst.vo
com.adobe.dct.component
com.adobe.dct.component.datadictionary
com.adobe.dct.component.datadictionaryElement
com.adobe.dct.component.dataElementsPanel
com.adobe.dct.component.toolbars
com.adobe.dct.event
com.adobe.dct.exp
com.adobe.dct.model
com.adobe.dct.service
com.adobe.dct.service.provider
com.adobe.dct.transfer
com.adobe.dct.util
com.adobe.dct.view
com.adobe.ep.taskmanagement.domain
com.adobe.ep.taskmanagement.event
com.adobe.ep.taskmanagement.filter
com.adobe.ep.taskmanagement.services
com.adobe.ep.taskmanagement.util
com.adobe.ep.ux.attachmentlist.component
com.adobe.ep.ux.attachmentlist.domain
com.adobe.ep.ux.attachmentlist.domain.events
com.adobe.ep.ux.attachmentlist.domain.renderers
com.adobe.ep.ux.attachmentlist.skin
com.adobe.ep.ux.attachmentlist.skin.renderers
com.adobe.ep.ux.content.event
com.adobe.ep.ux.content.factory
com.adobe.ep.ux.content.handlers
com.adobe.ep.ux.content.managers
com.adobe.ep.ux.content.model.asset
com.adobe.ep.ux.content.model.preview
com.adobe.ep.ux.content.model.relation
com.adobe.ep.ux.content.model.search
com.adobe.ep.ux.content.model.toolbar
com.adobe.ep.ux.content.search
com.adobe.ep.ux.content.services
com.adobe.ep.ux.content.services.load
com.adobe.ep.ux.content.services.permissions
com.adobe.ep.ux.content.services.preview
com.adobe.ep.ux.content.services.providers
com.adobe.ep.ux.content.services.query
com.adobe.ep.ux.content.services.relationships
com.adobe.ep.ux.content.services.search.lccontent
com.adobe.ep.ux.content.services.version
com.adobe.ep.ux.content.view
com.adobe.ep.ux.content.view.components.activate
com.adobe.ep.ux.content.view.components.grid
com.adobe.ep.ux.content.view.components.grid.hover
com.adobe.ep.ux.content.view.components.grid.hover.component
com.adobe.ep.ux.content.view.components.grid.renderers
com.adobe.ep.ux.content.view.components.relationships
com.adobe.ep.ux.content.view.components.review
com.adobe.ep.ux.content.view.components.search.renderers
com.adobe.ep.ux.content.view.components.searchpod
com.adobe.ep.ux.content.view.components.toolbar
com.adobe.ep.ux.content.view.components.toolbar.controlRenderers
com.adobe.ep.ux.content.view.components.version
com.adobe.ep.ux.documentsubmit.component
com.adobe.ep.ux.documentsubmit.domain
com.adobe.ep.ux.documentsubmit.skin
com.adobe.ep.ux.taskaction.component
com.adobe.ep.ux.taskaction.domain
com.adobe.ep.ux.taskaction.domain.events
com.adobe.ep.ux.taskaction.skin
com.adobe.ep.ux.taskdetails.component
com.adobe.ep.ux.taskdetails.domain
com.adobe.ep.ux.taskdetails.skin
com.adobe.ep.ux.tasklist.component
com.adobe.ep.ux.tasklist.domain
com.adobe.ep.ux.tasklist.skin
com.adobe.ep.ux.webdocumentviewer.domain
com.adobe.exm.expression
com.adobe.exm.expression.error
com.adobe.exm.expression.event
com.adobe.exm.expression.impl
com.adobe.fiber.runtime.lib
com.adobe.fiber.services
com.adobe.fiber.services.wrapper
com.adobe.fiber.styles
com.adobe.fiber.util
com.adobe.fiber.valueobjects
com.adobe.gravity.binding
com.adobe.gravity.context
com.adobe.gravity.flex.bundleloader
com.adobe.gravity.flex.progress
com.adobe.gravity.flex.serviceloader
com.adobe.gravity.framework
com.adobe.gravity.init
com.adobe.gravity.service.bundleloader
com.adobe.gravity.service.logging
com.adobe.gravity.service.manifest
com.adobe.gravity.service.progress
com.adobe.gravity.tracker
com.adobe.gravity.ui
com.adobe.gravity.utility
com.adobe.gravity.utility.async
com.adobe.gravity.utility.error
com.adobe.gravity.utility.events
com.adobe.gravity.utility.factory
com.adobe.gravity.utility.flex.async
com.adobe.gravity.utility.logging
com.adobe.gravity.utility.message
com.adobe.gravity.utility.sequence
com.adobe.gravity.utility.url
com.adobe.guides.control
com.adobe.guides.domain
com.adobe.guides.i18n
com.adobe.guides.spark.components.skins
com.adobe.guides.spark.components.skins.mx
com.adobe.guides.spark.headers.components
com.adobe.guides.spark.headers.skins
com.adobe.guides.spark.layouts.components
com.adobe.guides.spark.layouts.skins
com.adobe.guides.spark.navigators.components
com.adobe.guides.spark.navigators.renderers
com.adobe.guides.spark.navigators.skins
com.adobe.guides.spark.util
com.adobe.guides.spark.wrappers.components
com.adobe.guides.spark.wrappers.skins
com.adobe.guides.submit
com.adobe.icc.dc.domain
com.adobe.icc.dc.domain.factory
com.adobe.icc.editors.events
com.adobe.icc.editors.handlers
com.adobe.icc.editors.managers
com.adobe.icc.editors.model
com.adobe.icc.editors.model.config
com.adobe.icc.editors.model.el
com.adobe.icc.editors.model.el.operands
com.adobe.icc.editors.model.el.operators
com.adobe.icc.enum
com.adobe.icc.external.dc
com.adobe.icc.obj
com.adobe.icc.services
com.adobe.icc.services.category
com.adobe.icc.services.config
com.adobe.icc.services.download
com.adobe.icc.services.export
com.adobe.icc.services.external
com.adobe.icc.services.formbridge
com.adobe.icc.services.fragmentlayout
com.adobe.icc.services.layout
com.adobe.icc.services.letter
com.adobe.icc.services.locator
com.adobe.icc.services.module
com.adobe.icc.services.render
com.adobe.icc.services.submit
com.adobe.icc.services.user
com.adobe.icc.token
com.adobe.icc.vo
com.adobe.icc.vo.render
com.adobe.icomm.assetplacement.controller
com.adobe.icomm.assetplacement.controller.utils
com.adobe.icomm.assetplacement.data
com.adobe.icomm.assetplacement.model
com.adobe.livecycle.assetmanager.client
com.adobe.livecycle.assetmanager.client.event
com.adobe.livecycle.assetmanager.client.handler
com.adobe.livecycle.assetmanager.client.managers
com.adobe.livecycle.assetmanager.client.model
com.adobe.livecycle.assetmanager.client.model.cms
com.adobe.livecycle.assetmanager.client.service
com.adobe.livecycle.assetmanager.client.service.search
com.adobe.livecycle.assetmanager.client.service.search.cms
com.adobe.livecycle.assetmanager.client.utils
com.adobe.livecycle.content
com.adobe.livecycle.rca.model
com.adobe.livecycle.rca.model.constant
com.adobe.livecycle.rca.model.document
com.adobe.livecycle.rca.model.participant
com.adobe.livecycle.rca.model.reminder
com.adobe.livecycle.rca.model.stage
com.adobe.livecycle.rca.service
com.adobe.livecycle.rca.service.core
com.adobe.livecycle.rca.service.core.delegate
com.adobe.livecycle.rca.service.process
com.adobe.livecycle.rca.service.process.delegate
com.adobe.livecycle.rca.token
com.adobe.livecycle.ria.security.api
com.adobe.livecycle.ria.security.service
com.adobe.mosaic.layouts
com.adobe.mosaic.layouts.dragAndDrop
com.adobe.mosaic.layouts.interfaces
com.adobe.mosaic.mxml
com.adobe.mosaic.om.constants
com.adobe.mosaic.om.events
com.adobe.mosaic.om.impl
com.adobe.mosaic.om.interfaces
com.adobe.mosaic.skinning
com.adobe.mosaic.sparklib.editors
com.adobe.mosaic.sparklib.optionMenu
com.adobe.mosaic.sparklib.scrollableMenu
com.adobe.mosaic.sparklib.scrollableMenu.skins
com.adobe.mosaic.sparklib.tabLayout
com.adobe.mosaic.sparklib.tabLayout.events
com.adobe.mosaic.sparklib.tabLayout.layouts
com.adobe.mosaic.sparklib.tabLayout.skins
com.adobe.mosaic.sparklib.text
com.adobe.mosaic.sparklib.util
com.adobe.solutions.acm.authoring.presentation
com.adobe.solutions.acm.authoring.presentation.actionbar
com.adobe.solutions.acm.authoring.presentation.common
com.adobe.solutions.acm.authoring.presentation.events
com.adobe.solutions.acm.authoring.presentation.fragment
com.adobe.solutions.acm.authoring.presentation.letter
com.adobe.solutions.acm.authoring.presentation.letter.data
com.adobe.solutions.acm.authoring.presentation.preview
com.adobe.solutions.acm.authoring.presentation.rte
com.adobe.solutions.acm.ccr.presentation
com.adobe.solutions.acm.ccr.presentation.contentcapture
com.adobe.solutions.acm.ccr.presentation.contentcapture.events
com.adobe.solutions.acm.ccr.presentation.contentcapture.preview
com.adobe.solutions.acm.ccr.presentation.datacapture
com.adobe.solutions.acm.ccr.presentation.datacapture.renderers
com.adobe.solutions.acm.ccr.presentation.pdf
com.adobe.solutions.exm
com.adobe.solutions.exm.authoring
com.adobe.solutions.exm.authoring.components.controls
com.adobe.solutions.exm.authoring.components.toolbars
com.adobe.solutions.exm.authoring.domain
com.adobe.solutions.exm.authoring.domain.expression
com.adobe.solutions.exm.authoring.domain.impl
com.adobe.solutions.exm.authoring.domain.method
com.adobe.solutions.exm.authoring.domain.variable
com.adobe.solutions.exm.authoring.enum
com.adobe.solutions.exm.authoring.events
com.adobe.solutions.exm.authoring.model
com.adobe.solutions.exm.authoring.renderer
com.adobe.solutions.exm.authoring.view
com.adobe.solutions.exm.expression
com.adobe.solutions.exm.impl
com.adobe.solutions.exm.impl.method
com.adobe.solutions.exm.method
com.adobe.solutions.exm.mock
com.adobe.solutions.exm.mock.method
com.adobe.solutions.exm.runtime
com.adobe.solutions.exm.runtime.impl
com.adobe.solutions.exm.variable
com.adobe.solutions.prm.constant
com.adobe.solutions.prm.domain
com.adobe.solutions.prm.domain.factory
com.adobe.solutions.prm.domain.impl
com.adobe.solutions.prm.domain.manager
com.adobe.solutions.prm.presentation.asset
com.adobe.solutions.prm.presentation.constant
com.adobe.solutions.prm.presentation.document
com.adobe.solutions.prm.presentation.event
com.adobe.solutions.prm.presentation.file
com.adobe.solutions.prm.presentation.project
com.adobe.solutions.prm.presentation.team
com.adobe.solutions.prm.presentation.util
com.adobe.solutions.prm.service
com.adobe.solutions.prm.services.impl
com.adobe.solutions.prm.vo
com.adobe.solutions.rca.constant
com.adobe.solutions.rca.domain
com.adobe.solutions.rca.domain.common
com.adobe.solutions.rca.domain.factory
com.adobe.solutions.rca.domain.impl
com.adobe.solutions.rca.domain.impl.manager
com.adobe.solutions.rca.domain.manager
com.adobe.solutions.rca.presentation
com.adobe.solutions.rca.presentation.comment
com.adobe.solutions.rca.presentation.constant
com.adobe.solutions.rca.presentation.event
com.adobe.solutions.rca.presentation.gantt
com.adobe.solutions.rca.presentation.gantt.ruler
com.adobe.solutions.rca.presentation.template
com.adobe.solutions.rca.presentation.template.audit
com.adobe.solutions.rca.presentation.template.definition
com.adobe.solutions.rca.presentation.template.documents
com.adobe.solutions.rca.presentation.template.stages
com.adobe.solutions.rca.presentation.util
com.adobe.solutions.rca.service
com.adobe.solutions.rca.services.impl
com.adobe.solutions.rca.vo
com.adobe.solutions.rca.vo.um
com.adobe.viewsource
fl.accessibility
fl.containers
fl.controls
fl.controls.dataGridClasses
fl.controls.listClasses
fl.controls.progressBarClasses
fl.core
fl.data
fl.display
fl.events
fl.ik
fl.lang
fl.livepreview
fl.managers
fl.motion
fl.motion.easing
fl.rsl
fl.text
fl.transitions
fl.transitions.easing
fl.video
flash.accessibility
flash.concurrent
flash.crypto
flash.data
flash.desktop
flash.display
flash.display3D
flash.display3D.textures
flash.errors
flash.events
flash.external
flash.filesystem
flash.filters
flash.geom
flash.globalization
flash.html
flash.media
flash.net
flash.net.dns
flash.net.drm
flash.notifications
flash.permissions
flash.printing
flash.profiler
flash.sampler
flash.security
flash.sensors
flash.system
flash.text
flash.text.engine
flash.text.ime
flash.ui
flash.utils
flash.xml
flashx.textLayout
flashx.textLayout.compose
flashx.textLayout.container
flashx.textLayout.conversion
flashx.textLayout.edit
flashx.textLayout.elements
flashx.textLayout.events
flashx.textLayout.factory
flashx.textLayout.formats
flashx.textLayout.operations
flashx.textLayout.utils
flashx.undo
ga.controls
ga.layouts
ga.model
ga.uiComponents
ga.util
ga.views
ga.wrappers
lc.foundation
lc.foundation.domain
lc.foundation.events
lc.foundation.ui
lc.foundation.util
lc.preloader
lc.procmgmt
lc.procmgmt.commands
lc.procmgmt.domain
lc.procmgmt.events
lc.procmgmt.formbridge
lc.procmgmt.impl
lc.procmgmt.ui.attachments
lc.procmgmt.ui.controls
lc.procmgmt.ui.controls.card
lc.procmgmt.ui.controls.renderer
lc.procmgmt.ui.help
lc.procmgmt.ui.layout
lc.procmgmt.ui.presentationmodel
lc.procmgmt.ui.process
lc.procmgmt.ui.search
lc.procmgmt.ui.startpoint
lc.procmgmt.ui.task
lc.procmgmt.ui.task.form
lc.procmgmt.ui.task.form.commands
lc.procmgmt.ui.tracking
mx.accessibility
mx.automation
mx.automation.air
mx.automation.delegates
mx.automation.delegates.advancedDataGrid
mx.automation.delegates.charts
mx.automation.delegates.containers
mx.automation.delegates.controls
mx.automation.delegates.controls.dataGridClasses
mx.automation.delegates.controls.fileSystemClasses
mx.automation.delegates.core
mx.automation.delegates.flashflexkit
mx.automation.events
mx.binding
mx.binding.utils
mx.charts
mx.charts.chartClasses
mx.charts.effects
mx.charts.effects.effectClasses
mx.charts.events
mx.charts.renderers
mx.charts.series
mx.charts.series.items
mx.charts.series.renderData
mx.charts.styles
mx.collections
mx.collections.errors
mx.containers
mx.containers.accordionClasses
mx.containers.dividedBoxClasses
mx.containers.errors
mx.containers.utilityClasses
mx.controls
mx.controls.advancedDataGridClasses
mx.controls.dataGridClasses
mx.controls.listClasses
mx.controls.menuClasses
mx.controls.olapDataGridClasses
mx.controls.scrollClasses
mx.controls.sliderClasses
mx.controls.textClasses
mx.controls.treeClasses
mx.controls.videoClasses
mx.core
mx.core.windowClasses
mx.data
mx.data.crypto
mx.data.errors
mx.data.events
mx.data.messages
mx.data.mxml
mx.data.offline.errors
mx.data.utils
mx.effects
mx.effects.easing
mx.effects.effectClasses
mx.events
mx.filters
mx.flash
mx.formatters
mx.geom
mx.graphics
mx.graphics.codec
mx.graphics.shaderClasses
mx.logging
mx.logging.errors
mx.logging.targets
mx.managers
mx.messaging
mx.messaging.channels
mx.messaging.config
mx.messaging.errors
mx.messaging.events
mx.messaging.management
mx.messaging.messages
mx.modules
mx.netmon
mx.olap
mx.olap.aggregators
mx.preloaders
mx.printing
mx.resources
mx.rpc
mx.rpc.events
mx.rpc.http
mx.rpc.http.mxml
mx.rpc.livecycle
mx.rpc.mxml
mx.rpc.remoting
mx.rpc.remoting.mxml
mx.rpc.soap
mx.rpc.soap.mxml
mx.rpc.wsdl
mx.rpc.xml
mx.skins
mx.skins.halo
mx.skins.spark
mx.skins.wireframe
mx.skins.wireframe.windowChrome
mx.states
mx.styles
mx.utils
mx.validators
org.osmf.containers
org.osmf.display
org.osmf.elements
org.osmf.events
org.osmf.layout
org.osmf.logging
org.osmf.media
org.osmf.metadata
org.osmf.net
org.osmf.net.dvr
org.osmf.net.httpstreaming
org.osmf.net.metrics
org.osmf.net.qos
org.osmf.net.rtmpstreaming
org.osmf.net.rules
org.osmf.traits
org.osmf.utils
spark.accessibility
spark.automation.delegates
spark.automation.delegates.components
spark.automation.delegates.components.gridClasses
spark.automation.delegates.components.mediaClasses
spark.automation.delegates.components.supportClasses
spark.automation.delegates.skins.spark
spark.automation.events
spark.collections
spark.components
spark.components.calendarClasses
spark.components.gridClasses
spark.components.mediaClasses
spark.components.supportClasses
spark.components.windowClasses
spark.core
spark.effects
spark.effects.animation
spark.effects.easing
spark.effects.interpolation
spark.effects.supportClasses
spark.events
spark.filters
spark.formatters
spark.formatters.supportClasses
spark.globalization
spark.globalization.supportClasses
spark.layouts
spark.layouts.supportClasses
spark.managers
spark.modules
spark.preloaders
spark.primitives
spark.primitives.supportClasses
spark.skins
spark.skins.mobile
spark.skins.mobile.supportClasses
spark.skins.spark
spark.skins.spark.mediaClasses.fullScreen
spark.skins.spark.mediaClasses.normal
spark.skins.spark.windowChrome
spark.skins.wireframe
spark.skins.wireframe.mediaClasses
spark.skins.wireframe.mediaClasses.fullScreen
spark.transitions
spark.utils
spark.validators
spark.validators.supportClasses
xd.core.axm.enterprise.view.components
xd.core.axm.enterprise.view.skins
xd.core.axm.view.components
xd.core.axm.view.components.support

Eléments du langage

Constantes globales
Fonctions globales
Opérateurs
Instructions, mots clés et directives
Types spéciaux

Annexes

Nouveautés
Erreurs de compilation
Avertissements du compilateur
Erreurs d’exécution
Migration vers ActionScript 3
Jeux de caractères pris en charge
Balises MXML uniquement
Eléments XML de mouvement
Balises Timed Text
Liste des éléments déconseillés
Constantes d’implémentation d’accessibilité
Utilisation des exemples de code ActionScript
Informations juridiques
Packageflash.net
Classepublic class FileReference
HéritageFileReference Inheritance EventDispatcher Inheritance Object
Sous-classes File

Version du langage: ActionScript 3.0
Versions du moteur d’exécution: AIR 1.0, Flash Player 9

La classe FileReference permet de charger et télécharger des fichiers entre l’ordinateur d’un utilisateur et un serveur. Une boîte de dialogue du système d’exploitation invite l’utilisateur à sélectionner un fichier pour le charger ou à choisir un emplacement pour le télécharger. Chaque objet FileReference fait référence à un seul fichier sur le disque dur de l’utilisateur et inclut des propriétés contenant des informations sur la taille, le type, le nom, la date de création, la date de modification et le type de créateur (Macintosh uniquement) du fichier.

Remarque : dans Adobe AIR, la classe File, qui étend la classe FileReference, offre davantage de fonctionnalités et moins de restrictions de sécurité que la classe FileReference.

Les occurrences de FileReference sont créées de diverses manières :

  • Lorsque vous utilisez l’opérateur new avec le constructeur FileReference : var myFileReference = new FileReference();
  • Lorsque vous appelez la méthode FileReferenceList.browse(), ce qui crée un tableau d’objets FileReference.

Pendant une opération de chargement, toutes les propriétés d’un objet FileReference sont renseignées par des appels des méthodes FileReference.browse() ou FileReferenceList.browse(). Pendant une opération de téléchargement, la propriété name est renseignée lors de la distribution de l’événement select. Toutes les autres propriétés sont renseignées lors de la distribution de l’événement complete.

La méthode browse() ouvre une boîte de dialogue du système d’exploitation qui invite l’utilisateur à sélectionner un fichier en vue de le charger. La méthode FileReference.browse() permet à l’utilisateur de choisir un seul fichier ; la méthode FileReferenceList.browse() lui permet d’en sélectionner plusieurs. Lorsque l’appel de la méthode browse() a réussi, appelez la méthode FileReference.upload() pour charger un seul fichier à la fois. La méthode FileReference.download() invite l’utilisateur à sélectionner un emplacement pour enregistrer le fichier et initialise le téléchargement à partir d’une URL distante.

Les classes FileReference et FileReferenceList ne vous permettent pas de définir un emplacement de fichier par défaut pour la boîte de dialogue générée par les méthodes browse() et download(). L’emplacement par défaut indiqué dans la boîte de dialogue est le dernier dossier parcouru, dans la mesure où il est possible de déterminer cet emplacement, ou le Bureau. Les classes ne vous permettent pas d’accéder aux fichiers transférés en lecture ou en écriture. Elles ne permettent pas au fichier SWF qui a initié le chargement ou le téléchargement d’accéder au fichier chargé ou à l’emplacement du fichier sur le disque de l’utilisateur.

Par ailleurs, les classes FileReference et FileReferenceList ne proposent pas de méthode d’authentification. Pour les serveurs ayant besoin d’une authentification, vous pouvez télécharger des fichiers avec le plug-in de navigation de Flash® Player, mais le chargement (sur tous les lecteurs) et le téléchargement (sur les lecteurs autonomes ou externes) échouent. Utilisez les écouteurs d’événement FileReference afin de déterminer si les opérations ont réussi, ou non, et pour traiter les erreurs.

Dans le cas de contenus s’exécutant dans Flash Player ou Adobe AIR hors du sandbox de sécurité de l’application, les opérations de chargement ou de téléchargement permettent d’accéder uniquement aux fichiers de leur propre domaine et de tous les domaines spécifiés par un fichier de régulation d’URL. Si le contenu qui initialise le chargement ou le téléchargement n’appartient pas au même domaine que le serveur de fichiers, placez un fichier de régulation dans ce dernier.

Notez que lors de la publication dans Flash Player 10, les nouvelles fonctionnalités ajoutées au lecteur ne vous permettent d’exécuter qu’une seule opération à la fois : FileReference.browse(), FileReference.upload(), FileReference.download(), FileReference.load() ou FileReference.save(). Dans le cas contraire, Flash Player renvoie une erreur d’exécution (code 2174). Utilisez FileReference.cancel() pour arrêter une opération en cours. Cette restriction s’applique uniquement à Flash Player 10. Cette restriction sur l’exécution simultanée de plusieurs opérations ne s’applique pas aux versions précédentes de Flash Player.

Pendant l’exécution des appels aux méthodes FileReference.browse(), FileReferenceList.browse() ou FileReference.download(), la lecture du fichier SWF s’interrompt dans les versions autonomes et externes de Flash Player et AIR pour Linux, et Mac OS X version 10.1 et antérieures.

Flash Player envoie la requête HTTP POST suivante, par exemple, à un script côté serveur en l’absence de paramètres :

  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 envoie la requête HTTP POST suivante si l’utilisateur spécifie les paramètres api_sig, api_key et 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--
  

Consulter les exemples

Informations complémentaires

Eléments de l’API associés



Propriétés publiques
 PropriétéDéfini par
 Inheritedconstructor : Object
Référence à l’objet de classe ou à la fonction constructeur d’une occurrence donnée d’un objet.
Object
  creationDate : Date
[lecture seule] Date de création du fichier dans le disque local.
FileReference
  creator : String
[lecture seule] Type de créateur Macintosh du fichier, uniquement utilisé dans les versions Mac OS antérieures à Mac OS X.
FileReference
  data : ByteArray
[lecture seule] L’objet ByteArray représentant les données du fichier chargé après l’aboutissement d’un appel de la méthode load().
FileReference
      extension : String
[lecture seule] Extension du fichier.
FileReference
  modificationDate : Date
[lecture seule] Date de la dernière modification du fichier dans le disque local.
FileReference
  name : String
[lecture seule] Nom du fichier dans le disque local.
FileReference
      permissionStatus : String
[statique] [lecture seule] Déterminez si l’application a été autorisée à accéder au système de fichiers.
FileReference
  size : Number
[lecture seule] Taille du fichier dans le disque local, en octets.
FileReference
  type : String
[lecture seule] Type de fichier.
FileReference
Méthodes publiques
 MéthodeDéfini par
  
Crée un nouvel objet FileReference.
FileReference
 Inherited
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Enregistre un objet écouteur d’événement auprès d’un objet EventDispatcher afin que l’écouteur soit averti d’un événement.
EventDispatcher
  
browse(typeFilter:Array = null):Boolean
Affiche une boîte de dialogue de recherche de fichiers dans laquelle l’utilisateur peut sélectionner un fichier à charger.
FileReference
  
Annule une opération de chargement ou de téléchargement en cours sur cet objet FileReference.
FileReference
 Inherited
Distribue un événement dans le flux d’événements.
EventDispatcher
  
download(request:URLRequest, defaultFileName:String = null):void
Affiche une boîte de dialogue permettant à l’utilisateur de télécharger un fichier à partir d’un serveur distant.
FileReference
 Inherited
Vérifie si des écouteurs sont enregistrés auprès de l’objet EventDispatcher pour un type spécifique d’événement.
EventDispatcher
 Inherited
Indique si la propriété spécifiée d’un objet est définie.
Object
 Inherited
Indique si une occurrence de la classe Object figure dans la chaîne de prototype de l’objet spécifié en tant que paramètre.
Object
  
Démarre le chargement d’un fichier local sélectionné par un utilisateur.
FileReference
 Inherited
Indique si la propriété spécifiée existe et est énumérable.
Object
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
Supprime un écouteur de l’objet EventDispatcher.
EventDispatcher
  
Demande l’autorisation d’accès au système de fichiers.
FileReference
  
save(data:*, defaultFileName:String = null):void
Ouvre une boîte de dialogue qui permet à l’utilisateur d’enregistrer un fichier dans le système de fichiers local.
FileReference
 Inherited
Définit la disponibilité d’une propriété dynamique pour les opérations en boucle.
Object
 Inherited
Renvoie la représentation de chaîne de cet objet, formatée selon les paramètres régionaux en vigueur.
Object
 Inherited
Renvoie la représentation sous forme de chaîne de l’objet spécifié.
Object
  
upload(request:URLRequest, uploadDataFieldName:String = "Filedata", testUpload:Boolean = false):void
Procède au chargement du fichier sur un serveur distant.
FileReference
  
Lance le chargement d’un fichier dans une URL sans aucun encodage.
FileReference
 Inherited
Renvoie la valeur primitive de l’objet spécifié.
Object
 Inherited
Vérifie si un écouteur d’événement est enregistré auprès de cet objet EventDispatcher ou de ses ancêtres pour le type d’événement spécifié.
EventDispatcher
Evénements
 Evénement Synthèse Défini par
 Inherited[Evénement de diffusion] Distribué lorsque l’application Flash Player obtient le focus du système d’exploitation et devient active.EventDispatcher
  Distribué lorsqu’un chargement ou un téléchargement de fichiers est annulé par l’utilisateur via la boîte de dialogue de recherche de fichiers.FileReference
  Distribué à la fin d’un téléchargement ou lorsqu’un chargement génère le code d’état HTTP 200.FileReference
 Inherited[Evénement de diffusion] Distribué lorsque l’application Flash Player ou AIR perd le focus du système d’exploitation et devient inactive.EventDispatcher
  Distribué si un appel de la méthode upload() ou uploadUnencoded() tente d’accéder aux données via HTTP, et si Adobe AIR est capable de détecter et de renvoyer le code d’état de la requête.FileReference
  Distribué lorsqu’un chargement échoue et qu’il existe un code d’état HTTP décrivant l’échec.FileReference
  Distribué lors de l’échec de l’opération de chargement ou de téléchargement.FileReference
  Distribué au début d’une opération de chargement ou de téléchargement.FileReference
  Distribué lorsque l’application demande l’autorisation d’accéder au système de fichiers.FileReference
  Distribué régulièrement pendant l’opération de chargement ou de téléchargement.FileReference
  Distribué lorsqu’un appel de la méthode FileReference.upload() ou FileReference.download() tente de charger un fichier sur un serveur ou d’extraire un fichier d’un serveur qui se trouve hors du sandbox de sécurité de l’appelant.FileReference
  Distribué lorsque l’utilisateur sélectionne un fichier à charger ou télécharger dans la boîte de dialogue de recherche de fichiers.FileReference
  Distribué après réception des données par le serveur suite à un chargement réussi.FileReference
Détails de la propriété

creationDate

propriété
creationDate:Date  [lecture seule]

Version du langage: ActionScript 3.0
Versions du moteur d’exécution: AIR 1.0, Flash Player 9

Date de création du fichier dans le disque local. Si l’objet n’a pas été renseigné, l’appel effectué pour obtenir la valeur de cette propriété renvoie null.

Remarque : Si un système d'exploitation ne comporte pas creationDate comme propriété, dans ces cas, CreationDate est égal à lastModifiedDate.



Implémentation
    public function get creationDate():Date

Valeur émise
IllegalOperationError — Si l’appel de la méthode FileReference.browse(), FileReferenceList.browse() ou FileReference.download() n’a pas abouti, une exception est renvoyée, accompagnée d’un message indiquant que des fonctions ont été appelées dans un ordre incorrect ou qu’un appel antérieur a échoué. Dans ce cas, la valeur de la propriété creationDate correspond à null.
 
IOError — S’il est impossible d’accéder aux informations relatives au fichier, une exception indiquant qu’une erreur d’E/S s’est produite sur un fichier est renvoyée.

Eléments de l’API associés

creator

propriété 
creator:String  [lecture seule]

Version du langage: ActionScript 3.0
Versions du moteur d’exécution: AIR 1.0, Flash Player 9

Type de créateur Macintosh du fichier, uniquement utilisé dans les versions Mac OS antérieures à Mac OS X. Sous Windows ou Linux, cette propriété est null. Si l’objet FileReference n’a pas été renseigné, l’appel effectué pour obtenir la valeur de cette propriété renvoie null.



Implémentation
    public function get creator():String

Valeur émise
IllegalOperationError — Sous Macintosh, si l’appel de la méthode FileReference.browse(), FileReferenceList.browse() ou FileReference.download() n’a pas abouti, une exception est renvoyée, accompagnée d’un message indiquant que des fonctions ont été appelées dans un ordre incorrect ou qu’un appel antérieur a échoué. Dans ce cas, la valeur de la propriété creator correspond à null.

Informations complémentaires

Eléments de l’API associés

data

propriété 
data:ByteArray  [lecture seule]

Version du langage: ActionScript 3.0
Versions du moteur d’exécution: Flash Player 10, AIR 1.5

L’objet ByteArray représentant les données du fichier chargé après l’aboutissement d’un appel de la méthode load().



Implémentation
    public function get data():ByteArray

Valeur émise
IllegalOperationError — Si l’appel de la méthode load() n’a pas abouti, une exception est renvoyée, accompagnée d’un message indiquant que des fonctions ont été appelées dans un ordre incorrect ou qu’un appel antérieur a échoué. Dans ce cas, la valeur de la propriété data est null.
 
IOError — Si l’ouverture ou la lecture du fichier est impossible, ou qu’une autre erreur d’accès au fichier survient, une exception indiquant qu’une erreur d’entrée ou de sortie s’est produite dans le fichier est renvoyée. Dans ce cas, la valeur de la propriété data est null.

Informations complémentaires

Eléments de l’API associés

    

extension

propriété 
extension:String  [lecture seule]

Version du langage: ActionScript 3.0
Versions du moteur d’exécution: AIR 1.0

Extension du fichier.

L’extension d’un fichier correspond à la partie du nom qui suit le point final (« . »), sans inclure ce dernier. Si le nom du fichier ne comporte aucun point, l’extension est null.

Remarque : vous devez utiliser la propriété extension pour déterminer le type d’un fichier ; n’utilisez pas les propriétés creator et type. Ces propriétés sont en effet déconseillées, car elles s’appliquent à d’anciennes versions de Mac OS.



Implémentation
    public function get extension():String

Valeur émise
IllegalOperationError — Si la référence n’est pas initialisée.

modificationDate

propriété 
modificationDate:Date  [lecture seule]

Version du langage: ActionScript 3.0
Versions du moteur d’exécution: AIR 1.0, Flash Player 9, Flash Player 9

Date de la dernière modification du fichier dans le disque local. Si l’objet FileReference n’a pas été renseigné, l’appel effectué pour obtenir la valeur de cette propriété renvoie null.



Implémentation
    public function get modificationDate():Date

Valeur émise
IllegalOperationError — Si l’appel de la méthode FileReference.browse(), FileReferenceList.browse() ou FileReference.download() n’a pas abouti, une exception est renvoyée, accompagnée d’un message indiquant que des fonctions ont été appelées dans un ordre incorrect ou qu’un appel antérieur a échoué. Dans ce cas, la valeur de la propriété modificationDate correspond à null.
 
IOError — S’il est impossible d’accéder aux informations relatives au fichier, une exception indiquant qu’une erreur d’E/S s’est produite sur un fichier est renvoyée.

Eléments de l’API associés

name

propriété 
name:String  [lecture seule]

Version du langage: ActionScript 3.0
Versions du moteur d’exécution: AIR 1.0, Flash Player 9

Nom du fichier dans le disque local. Si l’objet FileReference n’a pas été renseigné (via un appel valide à FileReference.download() ou à FileReference.browse()), Flash Player renvoie une erreur lorsque vous tentez d’obtenir la valeur de cette propriété.

Toutes les propriétés d’un objet FileReference sont renseignées par appel de la méthode browse(). A la différence des autres propriétés FileReference, si vous appelez la méthode download(), la propriété name est renseignée lors de la distribution de l’événement select.



Implémentation
    public function get name():String

Valeur émise
IllegalOperationError — Si l’appel de la méthode FileReference.browse(), FileReferenceList.browse() ou FileReference.download() n’a pas abouti, une exception est renvoyée, accompagnée d’un message indiquant que des fonctions ont été appelées dans un ordre incorrect ou qu’un appel antérieur a échoué.

Eléments de l’API associés

    

permissionStatus

propriété 
permissionStatus:String  [lecture seule]

Version du langage: ActionScript 3.0
Versions du moteur d’exécution: AIR 24.0

Déterminez si l’application a été autorisée à accéder au système de fichiers.



Implémentation
    public static function get permissionStatus():String

Eléments de l’API associés

size

propriété 
size:Number  [lecture seule]

Version du langage: ActionScript 3.0
Versions du moteur d’exécution: AIR 1.0, Flash Player 9

Taille du fichier dans le disque local, en octets.

Remarque : dans la version initiale d’ActionScript 3.0, la propriété size était définie en tant qu’objet uint, qui prenait en charge des fichiers pouvant atteindre 4 Go. Elle est désormais désignée comme objet Number afin de prendre en charge des fichiers plus volumineux.



Implémentation
    public function get size():Number

Valeur émise
IllegalOperationError — Si l’appel de la méthode FileReference.browse(), FileReferenceList.browse() ou FileReference.download() n’a pas abouti, une exception est renvoyée, accompagnée d’un message indiquant que des fonctions ont été appelées dans un ordre incorrect ou qu’un appel antérieur a échoué.
 
IOError — Si l’ouverture ou la lecture du fichier est impossible, ou qu’une autre erreur d’accès au fichier survient, une exception indiquant qu’une erreur d’entrée ou de sortie s’est produite dans le fichier est renvoyée.

Eléments de l’API associés

type

propriété 
type:String  [lecture seule]

Version du langage: ActionScript 3.0
Versions du moteur d’exécution: AIR 1.0, Flash Player 9

Type de fichier.

Sous Windows ou Linux, cette propriété correspond à l’extension de fichier. Sous Macintosh, cette propriété correspond au type de fichier à quatre caractères, uniquement utilisé dans les versions de Mac OS antérieures à Mac OS X. Si l’objet FileReference n’a pas été renseigné, un appel permettant d’obtenir la valeur de cette propriété renvoie null.

Sous Windows, Linux et Mac OS X, l’extension du fichier, c’est-à-dire la partie de la propriété name qui suit la dernière occurrence du point (.), permet d’identifier le type de fichier.



Implémentation
    public function get type():String

Valeur émise
IllegalOperationError — Si l’appel de la méthode FileReference.browse(), FileReferenceList.browse() ou FileReference.download() n’a pas abouti, une exception est renvoyée, accompagnée d’un message indiquant que des fonctions ont été appelées dans un ordre incorrect ou qu’un appel antérieur a échoué. Dans ce cas, la valeur de la propriété type correspond à null.

Eléments de l’API associés

Détails du constructeur

FileReference

()Constructeur
public function FileReference()

Version du langage: ActionScript 3.0
Versions du moteur d’exécution: AIR 1.0, Flash Player 9

Crée un nouvel objet FileReference. Quand il est renseigné, un objet FileReference représente un fichier du disque local de l’utilisateur.

Eléments de l’API associés

Détails de la méthode

browse

()méthode
public function browse(typeFilter:Array = null):Boolean

Version du langage: ActionScript 3.0
Versions du moteur d’exécution: AIR 1.0, Flash Player 9

Affiche une boîte de dialogue de recherche de fichiers dans laquelle l’utilisateur peut sélectionner un fichier à charger. La boîte de dialogue est spécifique au système d’exploitation de l’utilisateur. L’utilisateur peut sélectionner un fichier dans l’ordinateur local ou dans d’autres systèmes, via un chemin UNC sur Windows, par exemple.

Remarque : la classe File, disponible dans Adobe AIR, comprend des méthodes permettant d’accéder à des boîtes de dialogue de sélection de systèmes de fichiers plus spécifiques. Ces méthodes sont les suivantes : File.browseForDirectory(), File.browseForOpen(), File.browseForOpenMultiple()et File.browseForSave().

Lorsque vous appelez cette méthode et que l’utilisateur réussit à sélectionner un fichier, les propriétés de l’objet FileReference sont renseignées par les propriétés de ce fichier. Par la suite, à chaque appel de la méthode FileReference.browse(), les propriétés de l’objet FileReference sont réinitialisées en fonction du fichier choisi par l’utilisateur dans la boîte de dialogue. Une seule session browse() ou download() peut être effectuée à la fois (car une seule boîte de dialogue peut être appelée à la fois).

Le paramètre typeFilter vous permet de déterminer les fichiers répertoriés dans la boîte de dialogue.

Dans Flash Player 10 et Flash Player 9 Mise à jour 5, l’appel de cette méthode aboutit uniquement en réponse à un événement utilisateur (par exemple, un événement de type clic de souris ou pression de touche). Dans les autres cas, Flash Player renvoie une exception Error à l’appel de cette méthode.

Notez que lors de la publication dans Flash Player 10, les nouvelles fonctionnalités ajoutées au lecteur ne vous permettent d’exécuter qu’une seule opération à la fois : FileReference.browse(), FileReference.upload(), FileReference.download(), FileReference.load() ou FileReference.save(). Dans le cas contraire, Flash Player renvoie une erreur d’exécution (code 2174). Utilisez FileReference.cancel() pour arrêter une opération en cours. Cette restriction s’applique uniquement à Flash Player 10. Cette restriction sur l’exécution simultanée de plusieurs opérations ne s’applique pas aux versions précédentes de Flash Player.

Dans Adobe AIR, la boîte de dialogue de recherche de fichiers n’est pas toujours affichée devant les fenêtres appartenant à une autre fenêtre (fenêtres dont la propriété owner n’est pas nulle). Pour éviter des problèmes de classement de fenêtres, masquez les fenêtres possédées avant d’appeler cette méthode.

Paramètres

typeFilter:Array (default = null) — Tableau d’occurrences de FileFilter utilisé pour filtrer les fichiers qui s’affichent dans la boîte de dialogue. Si vous omettez ce paramètre, tous les fichiers s’affichent. Pour plus d’informations, voir la classe FileFilter.

Valeur renvoyée
Boolean — Renvoie true si les paramètres sont valides et que la boîte de dialogue de recherche de fichiers est ouverte.

Evénements
select:Event — Distribué lorsque l’utilisateur sélectionne un élément dans la boîte de dialogue de recherche de fichiers.
 
cancel:Event — Distribué lorsque l’utilisateur annule le chargement du fichier dans la fenêtre de recherche de fichiers.

Valeur émise
IllegalOperationError — Renvoyé dans les cas suivants : 1) Une autre session browse FileReference ou FileReferenceList est en cours. Il est impossible d’exécuter plusieurs sessions de recherche de fichiers simultanément. 2) Un paramètre du fichier mms.cfg de l’utilisateur bloque cette opération.
 
ArgumentError — Une exception est renvoyée si le tableau typeFilter contient des objets FileFilter incorrectement formatés. Pour plus d’informations sur le format correct des objets FileFilter, voir la classe FileFilter.
 
Error — Si la méthode n’est pas appelée en réponse à l’action d’un utilisateur, notamment à un événement de type souris ou pression de touche.

Informations complémentaires

Eléments de l’API associés

select, événement
cancel, événement
FileReference.download()
FileReferenceList.browse()
File.browseForDirectory()
File.browseForOpen()
File.browseForOpenMultiple()
File.browseForSave()

cancel

()méthode 
public function cancel():void

Version du langage: ActionScript 3.0
Versions du moteur d’exécution: AIR 1.0, Flash Player 9

Annule une opération de chargement ou de téléchargement en cours sur cet objet FileReference. L’appel de cette méthode n’entraîne pas la distribution de l’événement cancel. Celui-ci n’est distribué que si l’utilisateur annule l’opération en fermant la boîte de dialogue de sélection des fichiers à charger ou télécharger.

download

()méthode 
public function download(request:URLRequest, defaultFileName:String = null):void

Version du langage: ActionScript 3.0
Versions du moteur d’exécution: AIR 1.0, Flash Player 9

Affiche une boîte de dialogue permettant à l’utilisateur de télécharger un fichier à partir d’un serveur distant. Flash Player n’impose pas de restrictions au niveau de la taille des fichiers chargés ou téléchargés ; en revanche, le lecteur prend en charge des chargements ou des téléchargements de 100 Mo au maximum.

La méthode download() ouvre d’abord une boîte de dialogue du système d’exploitation demandant à l’utilisateur d’entrer un nom de fichier et de sélectionner l’emplacement où enregistrer le fichier dans l’ordinateur local. Quand l’utilisateur choisit un emplacement et confirme le téléchargement (en cliquant sur Enregistrer, par exemple), celui-ci commence sur le serveur distant. Les écouteurs reçoivent des événements indiquant la progression du téléchargement, ainsi que sa réussite ou son échec. Pour déterminer l’état de la boîte de dialogue et de l’opération de téléchargement après avoir appelé la méthode download(), votre code doit écouter les événements tels que cancel, open, progress et complete.

Les fonctions FileReference.upload() et FileReference.download() ne sont pas bloquantes. Elles sont renvoyées après leur appel, avant la fin de la transmission de fichiers. En outre, si l’objet FileReference sort de son domaine, tout chargement ou téléchargement qui n’est pas encore terminé sur cet objet est annulé à ce moment-là. Veillez à ce que l’objet FileReference demeure dans son domaine pendant toute la durée prévue du chargement ou du téléchargement.

Une fois le fichier téléchargé, les propriétés de l’objet FileReference sont renseignées par les propriétés du fichier local. L’événement complete est distribué si le téléchargement aboutit.

Une seule session browse() ou download() peut être effectuée à la fois (car une seule boîte de dialogue peut être appelée à la fois).

Cette méthode prend en charge le téléchargement de tout type de fichier, via HTTP ou HTTPS.

Vous ne pouvez pas vous connecter aux ports généralement réservés. Pour obtenir une liste complète des ports bloqués, voir la rubrique « Restriction des API de réseau » dans le Guide du développeur d’ActionScript 3.0.

Remarque : si votre serveur requiert l’authentification des utilisateurs, seuls les fichiers SWF s’exécutant dans un navigateur (c’est-à-dire avec le plug-in de navigation ou un contrôle ActiveX), peuvent fournir une boîte de dialogue qui demande à l’utilisateur son identifiant et son mot de passe d’authentification, ceci uniquement pour les téléchargements. Le transfert de fichiers échoue si le chargement est effectué à l’aide du plug-in ou d’un contrôle ActiveX, ou si un chargement/téléchargement est effectué par le biais du lecteur autonome ou externe.

Lorsque vous employez cette méthode, tenez compte du modèle de sécurité de Flash Player :

  • Les opérations de chargement sont interdites si le fichier SWF appelant se trouve dans un sandbox local non approuvé.
  • Par défaut, l’accès entre les sandbox est refusé. Un site Web peut autoriser l’accès à une ressource en ajoutant un fichier de régulation d’URL.
  • Vous pouvez empêcher un fichier SWF d’utiliser cette méthode en définissant le paramètre allowNetworking des balises object et embed dans la page HTML qui comporte le contenu SWF.
  • Dans Flash Player 10 et Flash Player 9 Mise à jour 5, l’appel de cette méthode aboutit uniquement en réponse à un événement utilisateur (par exemple, un événement de type clic de souris ou pression de touche). Dans les autres cas, Flash Player renvoie une exception Error à l’appel de cette méthode.

Néanmoins, dans Adobe AIR, le contenu du sandbox de sécurité de l’application (contenu installé avec l’application AIR) n’est pas soumis à ces restrictions de sécurité.

Pour plus d’informations concernant la sécurité, voir la rubrique du Pôle de développement Flash Player : Sécurité (disponible en anglais uniquement).

Lorsque vous téléchargez un fichier à l’aide de cette méthode, il est alors marqué comme téléchargé sur les systèmes d’exploitation qui marquent les fichiers téléchargés :

  • Windows XP Service Pack 2 et versions ultérieures, et Windows Vista
  • Mac OS 10.5 et versions ultérieures

Certains systèmes d’exploitation, tels que Linux, ne marquent pas les fichiers téléchargés.

Notez que lors de la publication dans Flash Player 10, les nouvelles fonctionnalités ajoutées au lecteur ne vous permettent d’exécuter qu’une seule opération à la fois : FileReference.browse(), FileReference.upload(), FileReference.download(), FileReference.load() ou FileReference.save(). Dans le cas contraire, Flash Player renvoie une erreur d’exécution (code 2174). Utilisez FileReference.cancel() pour arrêter une opération en cours. Cette restriction s’applique uniquement à Flash Player 10. Cette restriction sur l’exécution simultanée de plusieurs opérations ne s’applique pas aux versions précédentes de Flash Player.

Dans Adobe AIR, la boîte de dialogue de téléchargement n’est pas toujours affichée devant les fenêtres appartenant à une autre fenêtre (fenêtres dont la propriété owner n’est pas nulle). Pour éviter des problèmes de classement de fenêtres, masquez les fenêtres possédées avant d’appeler cette méthode.

Paramètres

request:URLRequest — L’objet URLRequest. La propriété url de l’objet URLRequest doit contenir l’URL du fichier à télécharger sur l’ordinateur local. Si la valeur de ce paramètre est null, une exception est renvoyée. La propriété requestHeaders de l’objet URLRequest est ignorée ; les en-têtes de requête HTTP personnalisés ne sont pas pris en charge dans les chargements et les téléchargements. Pour envoyer des paramètres POST ou GET au serveur, réglez la valeur de URLRequest.data sur vos paramètres et URLRequest.method sur URLRequestMethod.POST ou URLRequestMethod.GET.

Dans certains navigateurs, la longueur des chaînes d’URL est limitée. Une longueur supérieure à 256 caractères peut échouer avec certains navigateurs ou serveurs.

 
defaultFileName:String (default = null) — Nom de fichier par défaut affiché dans la boîte de dialogue pour le fichier à télécharger. Les caractères suivants sont interdits dans cette chaîne : / \ : * ? " < > | %

Si vous omettez ce paramètre, le nom de fichier de l’URL distante est analysé et utilisé par défaut.


Evénements
open:Event — Distribué lors du démarrage d’une opération de téléchargement.
 
progress:ProgressEvent — Distribué régulièrement pendant le téléchargement du fichier.
 
complete:Event — Distribué en cas de réussite de l’opération de téléchargement.
 
cancel:Event — Distribué lorsque l’utilisateur ferme la boîte de dialogue.
 
select:Event — Distribué lorsque l’utilisateur sélectionne un fichier à télécharger dans la boîte de dialogue.
 
securityError:SecurityErrorEvent — Distribué lorsqu’un téléchargement échoue en raison d’une erreur de sécurité.
 
ioError:IOErrorEvent — Distribué pour l’une des raisons suivantes :
  • Une erreur d’entrée/de sortie se produit pendant la lecture ou la transmission du fichier.
  • Le contenu SWF s’exécutant dans les versions autonome et externe de Flash Player tente de télécharger un fichier depuis un serveur nécessitant une authentification. Au cours du téléchargement, les lecteurs autonomes et externes ne permettent pas aux utilisateurs d’entrer des mots de passe. Si un fichier SWF présent dans ces lecteurs tente de télécharger un fichier à partir d’un serveur nécessitant une authentification, le téléchargement échoue. Le téléchargement de fichiers réussit uniquement via les lecteurs avec contrôle ActiveX et plug-in de navigation.

Valeur émise
IllegalOperationError — Renvoyé dans les cas suivants : 1) Une autre session browse est en cours. Il est impossible d’exécuter plusieurs sessions de recherche de fichiers simultanément. 2) La valeur transmise à request ne contient ni un chemin ni un protocole valide. 3) Le nom de fichier à télécharger contient des caractères interdits. 4) Un paramètre du fichier mms.cfg de l’utilisateur bloque cette opération.
 
SecurityError — Tout contenu non approuvé au niveau local ne peut pas communiquer avec Internet. Pour contourner cette restriction, reclassifiez le fichier SWF en tant que fichier local avec accès au réseau ou en tant que fichier approuvé. Cette exception est renvoyée, accompagnée d’un message indiquant le nom de fichier et l’URL qui ne sont pas accessibles en raison des restrictions relatives à la sécurité des fichiers locaux.
 
SecurityError — Vous ne pouvez pas vous connecter aux ports généralement réservés. Pour obtenir une liste complète des ports bloqués, voir la rubrique « Restriction des API de réseau » dans le Guide du développeur d’ActionScript 3.0.
 
ArgumentError — Si url.data est de type ByteArray, une exception est renvoyée. Lorsqu’il est utilisé avec les méthodes FileReference.upload() et FileReference.download(), url.data peut uniquement être de type URLVariables ou String.
 
MemoryError — Cette erreur peut se produire pour les raisons suivantes : 1) Flash Player ne peut pas convertir le paramètre URLRequest.data du format UTF8 au format MBCS. Cette erreur se produit si l’objet URLRequest transmis à la méthode FileReference.download() est configuré pour exécuter une opération GET et si System.useCodePage est réglé sur true. 2) Flash Player ne peut pas allouer de mémoire aux données POST. Cette erreur se produit si l’objet URLRequest transmis à la méthode FileReference.download() est configuré pour exécuter une opération POST.
 
Error — Si la méthode n’est pas appelée en réponse à l’action d’un utilisateur, notamment à un événement de type souris ou pression de touche.

Informations complémentaires

Eléments de l’API associés


Exemple  ( Comment utiliser cet exemple )

L’exemple suivant illustre l’emploi de l’objet événement download. Pour exécuter cet exemple, modifiez la propriété downloadURL.url pour qu’elle pointe sur une URL et un domaine existants, au lieu de l’adresse http://www fictive.[votreDomaine].com/SomeFile.pdf. Vous aurez peut-être besoin de compiler le fichier SWF avec l’option Protection de lecture locale définie sur Accéder au réseau seulement ou de mettre à jour vos paramètres de sécurité Flash Player pour autoriser ce fichier à accéder au réseau.
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

()méthode 
public function load():void

Version du langage: ActionScript 3.0
Versions du moteur d’exécution: Flash Player 10, AIR 1.5

Démarre le chargement d’un fichier local sélectionné par un utilisateur. Flash Player n’impose pas de restrictions au niveau de la taille des fichiers chargés, téléchargés ou enregistrés, mais officiellement prend en charge des tailles de 100 Mo au maximum. Pour le contenu s’exécutant dans Flash Player, vous devez appeler la méthode FileReference.browse() ou FileReferenceList.browse() avant d’appeler la méthode load(). Néanmoins, le contenu exécuté dans AIR dans le sandbox de l’application peut appeler la méthode load() d’un objet File sans appeler au préalable la méthode browse() (la classe File d’AIR étend la classe FileReference).

Les écouteurs reçoivent des événements indiquant la progression du chargement, ainsi que sa réussite ou son échec. Bien que vous puissiez utiliser l’objet FileReferenceList permettant aux utilisateurs un choix multiple de fichiers à charger, vous devez charger les fichiers un par un. Pour charger les fichiers un par un, parcourez en boucle le tableau FileReferenceList.fileList des objets FileReference.

Adobe AIR comprend également la classe FileStream, qui propose davantage d’options de lecture de fichiers.

Les fonctions FileReference.upload(), FileReference.download(), FileReference.load() et FileReference.save() ne sont pas bloquantes. Elles sont renvoyées après leur appel, avant la fin de la transmission de fichiers. En outre, si l’objet FileReference sort de son domaine, toute transaction qui n’est pas encore terminée sur cet objet est annulée à ce moment-là. Veillez à ce que l’objet FileReference demeure dans son domaine pendant toute la durée prévue du chargement, téléchargement ou enregistrement.

Si le téléchargement du fichier aboutit, son contenu est stocké en tant que tableau d’octets dans la propriété data de l’objet FileReference.

Il faut tenir compte des considérations de sécurité suivantes :

  • Les opérations de chargement sont interdites si le fichier SWF appelant se trouve dans un sandbox local non approuvé.
  • Par défaut, l’accès entre les sandbox est refusé. Un site Web peut autoriser l’accès à une ressource en ajoutant un fichier de régulation interdomaines.
  • Vous pouvez empêcher un fichier d’utiliser cette méthode en définissant le paramètre allowNetworking des balises object et embed dans la page HTML qui comporte le contenu SWF.

Toutefois, ces considérations ne s’appliquent pas au contenu AIR dans le sandbox de l’application.

Notez que lors de la publication dans Flash Player 10 ou AIR 1.5, une seule des opérations suivantes peut être exécutée à la fois : FileReference.browse(), FileReference.upload(), FileReference.download(), FileReference.load(), FileReference.save(). Dans le cas contraire, l’application renvoie une erreur d’exécution (code 2174). Utilisez FileReference.cancel() pour arrêter une opération en cours. Cette restriction s’applique uniquement à Flash Player 10 et AIR 1.5. Les versions antérieures de Flash Player ou AIR ne sont pas concernées par cette restriction sur l’exécution simultanée de plusieurs opérations.

Dans Adobe AIR, la boîte de dialogue de recherche de fichiers n’est pas toujours affichée devant les fenêtres appartenant à une autre fenêtre (fenêtres dont la propriété owner n’est pas nulle). Pour éviter des problèmes de classement de fenêtres, masquez les fenêtres possédées avant d’appeler cette méthode.


Evénements
open:Event — Distribué lors du démarrage d’une opération de chargement.
 
progress:ProgressEvent — Distribué régulièrement pendant le chargement du fichier.
 
complete:Event — Distribué lorsque l’opération de chargement de fichier aboutit.
 
ioError:IOErrorEvent — Invoqué si le chargement échoue du fait d’une erreur d’entrée/sortie lors de la lecture ou de l’écriture du fichier par l’application.

Valeur émise
IllegalOperationError — Renvoyé dans les cas suivants : 1) Une autre session browse FileReference ou FileReferenceList est en cours. Il est impossible d’exécuter plusieurs sessions de recherche de fichiers simultanément. 2) Un paramètre du fichier mms.cfg de l’utilisateur bloque cette opération.
 
MemoryError — Cette erreur peut se produire si l’application ne peut pas allouer de mémoire pour le fichier. Le fichier peut être trop volumineux ou la quantité de mémoire disponible insuffisante.

Informations complémentaires

Eléments de l’API associés


Exemple  ( Comment utiliser cet exemple )

L’exemple suivant charge une image à partir de votre système de fichiers local sur l’objet d’affichage racine (dans ce cas, la scène). Exemple fourni par André Venancio (disponible en anglais uniquement).
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

()méthode 
public function requestPermission():void

Version du langage: ActionScript 3.0
Versions du moteur d’exécution: AIR 24.0

Demande l’autorisation d’accès au système de fichiers.


Evénements
PermissionStatus:PermissionEvent — distribué lorsque l’autorisation demandée est accordée/refusée par l’utilisateur.

save

()méthode 
public function save(data:*, defaultFileName:String = null):void

Version du langage: ActionScript 3.0
Versions du moteur d’exécution: Flash Player 10, AIR 1.5

Ouvre une boîte de dialogue qui permet à l’utilisateur d’enregistrer un fichier dans le système de fichiers local. Flash Player n’impose pas de restrictions au niveau de la taille des fichiers chargés, téléchargés ou enregistrés, mais officiellement le lecteur prend en charge des tailles de 100 Mo au maximum.

La méthode save() ouvre d’abord une boîte de dialogue du système d’exploitation demandant à l’utilisateur d’entrer un nom de fichier et de sélectionner l’emplacement où l’enregistrer dans l’ordinateur local. Lorsque l’utilisateur sélectionne un emplacement et confirme l’enregistrement (par exemple en cliquant sur Enregistrer), le processus d’enregistrement commence. Les écouteurs reçoivent des événements indiquant la progression de l’enregistrement, ainsi que sa réussite ou son échec. Pour déterminer l’état de la boîte de dialogue et de l’opération d’enregistrement après avoir appelé la méthode save(), votre code doit écouter les événements tels que cancel, open, progress et complete.

Adobe AIR comprend également la classe FileStream, qui propose davantage d’options d’enregistrement de fichiers au niveau local.

Les fonctions FileReference.upload(), FileReference.download(), FileReference.load() et FileReference.save() ne sont pas bloquantes. Elles sont renvoyées après leur appel, avant la fin de la transmission de fichiers. En outre, si l’objet FileReference sort de son domaine, toute transaction qui n’est pas encore terminée sur cet objet est annulée à ce moment-là. Veillez à ce que l’objet FileReference demeure dans son domaine pendant toute la durée prévue du chargement, téléchargement ou enregistrement.

Une fois le fichier enregistré, les propriétés de l’objet FileReference sont renseignées avec les propriétés du fichier local. L’événement complete est distribué si l’enregistrement aboutit.

Une seule session browse() ou save() peut être effectuée à la fois (car une seule boîte de dialogue peut être appelée à la fois).

Dans Flash Player, l’appel de cette méthode aboutit uniquement en réponse à un événement utilisateur (par exemple, un événement de type clic de souris ou pression de touche). Dans les autres cas, Flash Player renvoie une exception Error à l’appel de cette méthode. Le contenu AIR s’exécutant dans le sandbox de l’application n’est pas soumis à cette restriction.

Dans Adobe AIR, la boîte de dialogue d’enregistrement n’est pas toujours affichée devant les fenêtres appartenant à une autre fenêtre (fenêtres dont la propriété owner n’est pas nulle). Pour éviter des problèmes de classement de fenêtres, masquez les fenêtres possédées avant d’appeler cette méthode.

Paramètres

data:* — Données à enregistrer. Les données peuvent être de divers formats et sont traitées de façon appropriée :
  • Si la valeur est null, l’application renvoie une exception ArgumentError.
  • Si cette valeur est une chaîne, les données sont enregistrées sous forme de fichier texte UTF-8.
  • Si cette valeur est XML, les données sont écrites dans un fichier texte au format XML et le formatage est préservé.
  • Si cette valeur est un objet ByteArray, les données sont écrites textuellement dans un fichier de données.
  • Si la valeur ne correspond à aucune des descriptions ci-dessus, la méthode save() appelle la méthode toString() de l’objet pour convertir les données en chaîne, puis enregistre les données sous forme de fichier texte. En cas d’échec, l’application renvoie une exception AurgmentError.
 
defaultFileName:String (default = null) — Nom de fichier par défaut affiché dans la boîte de dialogue pour le fichier à enregistrer. Les caractères suivants sont interdits dans cette chaîne : / \ : * ? " < > | %

Si un objet File appelle cette méthode, le nom de fichier correspond à celui du fichier auquel l’objet File fait référence. (la classe File d’AIR étend la classe FileReference).


Evénements
open:Event — Distribué lors du démarrage d’une opération de téléchargement.
 
progress:ProgressEvent — Distribué régulièrement pendant le téléchargement du fichier.
 
complete:Event — Distribué en cas de réussite de l’opération de téléchargement.
 
cancel:Event — Distribué lorsque l’utilisateur ferme la boîte de dialogue.
 
select:Event — Distribué lorsque l’utilisateur sélectionne un fichier à télécharger dans la boîte de dialogue.
 
ioError:IOErrorEvent — Distribué si une erreur d’entrée/sortie se produit pendant la lecture ou la transmission du fichier.

Valeur émise
IllegalOperationError — Renvoyé dans les cas suivants : 1) Une autre session browse est en cours. Il est impossible d’exécuter plusieurs sessions de recherche de fichiers simultanément. 2) Le nom de fichier à télécharger contient des caractères interdits. 3) Un paramètre du fichier mms.cfg de l’utilisateur bloque cette opération.
 
ArgumentError — Si data n’est pas de type ByteArray et ne dispose pas d’une méthode toString(), une exception est renvoyée. Si data n’est pas de type XML et ne dispose pas d’une méthode toXMLString(), une exception est renvoyée.
 
Error — Si la méthode n’est pas appelée en réponse à l’action d’un utilisateur, notamment à un événement de type souris ou pression de touche.
 
MemoryError — Cette erreur peut se produire si Flash Player ne peut pas allouer de la mémoire pour le fichier. Le fichier peut être trop volumineux ou la quantité de mémoire disponible insuffisante.

Informations complémentaires

Eléments de l’API associés


Exemple  ( Comment utiliser cet exemple )

L’exemple suivant enregistre le contenu saisi dans un champ de texte dans un fichier. L’exemple crée un champ de texte modifiable (MyTextField) et un autre champ de texte non modifiable (MyButtonField) pour servir de « bouton » afin de répondre à un clic de souris. L’utilisateur peut modifier le premier champ de texte et cliquer sur le bouton pour enregistrer le contenu du champ de texte dans un fichier local. Le gestionnaire d’événement de type clip de souris clickhandler utilise la méthode FileReference.save(), (pour un objet FileReference appelé MyFileReference) pour ouvrir une boîte de dialogue sur le système d’exploitation de l’utilisateur afin que ce dernier puisse enregistrer le contenu dans un fichier local avec le nom attribué.
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

()méthode 
public function upload(request:URLRequest, uploadDataFieldName:String = "Filedata", testUpload:Boolean = false):void

Version du langage: ActionScript 3.0
Versions du moteur d’exécution: AIR 1.0, Flash Player 9

Procède au chargement du fichier sur un serveur distant. Flash Player n’impose pas de restrictions au niveau de la taille des fichiers chargés ou téléchargés ; en revanche, le lecteur prend en charge des chargements/téléchargements de 100 Mo au maximum. Vous devez appeler la méthode FileReference.browse() ou FileReferenceList.browse() avant d’appeler cette méthode.

Pour la classe File d’Adobe AIR, qui étend la classe FileReference, vous pouvez utiliser la méthode upload() pour charger n’importe quel fichier. Pour la classe FileReference (utilisée dans Flash Player), l’utilisateur doit tout d’abord sélectionner un fichier.

Les écouteurs reçoivent des événements indiquant la progression du chargement, ainsi que sa réussite ou son échec. Bien que vous puissiez employer l’objet FileReferenceList pour permettre aux utilisateurs de sélectionner plusieurs fichiers à charger, vous devez charger ces fichiers un par un. Pour ce faire, exécutez une itération dans le tableau FileReferenceList.fileList des objets FileReference.

Les fonctions FileReference.upload() et FileReference.download() ne sont pas bloquantes. Elles sont renvoyées après leur appel, avant la fin de la transmission de fichiers. En outre, si l’objet FileReference sort de son domaine, tout chargement ou téléchargement qui n’est pas encore terminé sur cet objet est annulé à ce moment-là. Veillez à ce que l’objet FileReference demeure dans son domaine pendant toute la durée prévue du chargement ou du téléchargement.

Le fichier est chargé dans l’URL transmise dans le paramètre url. L’URL doit être un script serveur configuré pour accepter les chargements. Flash Player charge les fichiers à l’aide de la méthode HTTP POST. Le script serveur qui gère le chargement doit attendre une requête POST comportant les éléments suivants :

  • Content-Type de multipart/form-data
  • Un élément Content-Disposition avec un attribut name défini sur Filedata par défaut et filename réglé sur le nom du fichier d’origine
  • Le contenu binaire du fichier

Vous ne pouvez pas vous connecter aux ports généralement réservés. Pour obtenir une liste complète des ports bloqués, voir la rubrique « Restriction des API de réseau » dans le Guide du développeur d’ActionScript 3.0.

Vous trouverez un exemple de requête POST dans la description du paramètre uploadDataFieldName. Vous pouvez envoyer les paramètres POST ou GET au serveur à l’aide de la méthode upload(). Consultez la description du paramètre request.

Si le paramètre testUpload est réglé sur true et que la taille du fichier à charger est supérieure à 10 Ko environ, sous Windows, Flash Player envoie d’abord une opération POST de test vide, avant le fichier lui-même, pour vérifier si la transmission est susceptible d’aboutir. Flash Player envoie ensuite une seconde opération POST contenant le fichier lui-même. Si la taille du fichier est inférieure à 10 Ko, Flash Player exécute une seule opération POST contenant le fichier lui-même. Sous Macintosh, Flash Player n’exécute pas d’opérations de chargement POST de test.

Remarque : si votre serveur requiert l’authentification des utilisateurs, seuls les fichiers SWF s’exécutant dans un navigateur (c’est-à-dire avec le plug-in de navigation ou un contrôle ActiveX), peuvent fournir une boîte de dialogue qui demande à l’utilisateur son identifiant et son mot de passe d’authentification, ceci uniquement pour les téléchargements. Le transfert de fichiers échoue si le chargement est effectué à l’aide du plug-in ou d’un contrôle ActiveX, ou si un chargement/téléchargement est effectué par le biais du lecteur autonome ou externe.

Lorsque vous employez cette méthode, tenez compte du modèle de sécurité de Flash Player :

  • Les opérations de chargement sont interdites si le fichier SWF appelant se trouve dans un sandbox local non approuvé.
  • Par défaut, l’accès entre les sandbox est refusé. Un site Web peut autoriser l’accès à une ressource en ajoutant un fichier de régulation d’URL.
  • Vous pouvez empêcher un fichier SWF d’utiliser cette méthode en définissant le paramètre allowNetworking des balises object et embed dans la page HTML qui comporte le contenu SWF.

Néanmoins, dans Adobe AIR, le contenu du sandbox de sécurité application (contenu installé avec l’application AIR) n’est pas soumis à ces restrictions de sécurité.

Pour plus d’informations concernant la sécurité, voir la rubrique du Pôle de développement Flash Player : Sécurité (disponible en anglais uniquement).

Notez que lors de la publication dans Flash Player 10, les nouvelles fonctionnalités ajoutées au lecteur ne vous permettent d’exécuter qu’une seule opération à la fois : FileReference.browse(), FileReference.upload(), FileReference.download(), FileReference.load() ou FileReference.save(). Dans le cas contraire, Flash Player renvoie une erreur d’exécution (code 2174). Utilisez FileReference.cancel() pour arrêter une opération en cours. Cette restriction s’applique uniquement à Flash Player 10. Cette restriction sur l’exécution simultanée de plusieurs opérations ne s’applique pas aux versions précédentes de Flash Player.

Paramètres

request:URLRequest — L’objet URLRequest. La propriété url de cet objet doit contenir l’URL du script serveur configuré pour traiter le chargement via les appels HTTP POST. Dans certains navigateurs, la longueur des chaînes d’URL est limitée. Une longueur supérieure à 256 caractères peut échouer avec certains navigateurs ou serveurs. Si la valeur de ce paramètre est null, une exception est renvoyée. La propriété requestHeaders de l’objet URLRequest est ignorée ; les en-têtes de requête HTTP personnalisés ne sont pas pris en charge dans les chargements et les téléchargements.

L’URL peut être de type HTTP ou, pour les chargements sécurisés, de type HTTPS. Pour utiliser HTTPS, entrez une URL HTTPS dans le paramètre url. Si vous ne spécifiez pas de numéro de port dans le paramètre url, le port 80 pour HTTP et le port 443 pour HTTPS sont utilisés par défaut.

Pour envoyer des paramètres POST or GET au serveur, réglez la propriété data de l’objet URLRequest sur vos paramètres et la propriété method sur URLRequestMethod.POST ou URLRequestMethod.GET.

 
uploadDataFieldName:String (default = "Filedata") — Nom de champ qui précède les données du fichier dans l’opération de chargement POST. La valeur de uploadDataFieldName doit être chaîne non vide et dont la valeur n’est pas null. Par défaut, la valeur de uploadDataFieldName correspond à Filedata, comme illustré dans l’exemple de requête POST ci-dessous :
    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) — Paramètre permettant de demander le chargement d’un fichier de test. Si la valeur de testUpload est true, pour les fichiers supérieurs à 10 Ko, Flash Player tente de charger un fichier test POST avec une valeur Content-Length de 0. Le chargement de test vérifie si le chargement du fichier réel peut réussir et si l’authentification du serveur se passera bien, le cas échéant. Seuls les lecteurs Windows prennent en charge les chargements de test.


Evénements
open:Event — Distribué lors du démarrage d’une opération de chargement.
 
progress:ProgressEvent — Distribué régulièrement pendant l’opération de chargement de fichier.
 
complete:Event — Distribué en cas de réussite de l’opération de chargement.
 
uploadCompleteData:DataEvent — Distribué après réception des données par le serveur suite à un chargement de fichier réussi.
 
securityError:SecurityErrorEvent — Distribué lorsqu’un chargement échoue en raison d’une violation de la sécurité.
 
httpStatus:HTTPStatusEvent — Distribué lorsqu’un chargement échoue en raison d’une erreur HTTP.
 
httpResponseStatus:HTTPStatusEvent — L’opération de chargement aboutit et le serveur renvoie une URL de réponse, ainsi que des en-têtes de réponse.
 
ioError:IOErrorEvent — Invoqué dans l’un des cas suivants :
  • Le chargement échoue à la suite d’une erreur d’entrée/de sortie survenue au cours de la lecture, de l’écriture ou de la transmission du fichier par Flash Player ou Adobe AIR.
  • Le chargement échoue en raison d’une tentative de chargement d’un fichier vers un serveur nécessitant une authentification (un nom d’utilisateur et un mot de passe, par exemple). Lors du chargement, les utilisateurs ne peuvent pas entrer des mots de passe.
  • Le chargement échoue car le paramètre url contient un protocole non valide. La méthode FileReference.upload() doit utiliser HTTP ou HTTPS.

Valeur émise
SecurityError — Les fichiers SWF non approuvés au niveau local ne peuvent pas communiquer avec Internet. Pour contourner cette restriction, reclassifiez le fichier SWF en tant que fichier local avec accès au réseau ou en tant que fichier approuvé. Cette exception est renvoyée, accompagnée d’un message indiquant le nom du fichier local et l’URL qui ne sont pas accessibles.
 
SecurityError — Vous ne pouvez pas vous connecter aux ports généralement réservés. Pour obtenir une liste complète des ports bloqués, voir la rubrique « Restriction des API de réseau » dans le Guide du développeur d’ActionScript 3.0.
 
IllegalOperationError — Renvoyé dans les cas suivants : 1) Une autre session browse FileReference ou FileReferenceList est en cours. Il est impossible d’exécuter plusieurs sessions de recherche de fichiers simultanément. 2) Le paramètre URL n’est pas un chemin ou un protocole valide. Les chargements de fichiers doivent utiliser HTTP, les téléchargements FTP ou HTTP. 3) Le paramètre uploadDataFieldName est réglé sur null. 4) Un paramètre du fichier mms.cfg de l’utilisateur bloque cette opération.
 
ArgumentError — Renvoyé dans les cas suivants : 1) Le paramètre uploadDataFieldName est une chaîne vide. 2) Le paramètre url.data est de type ByteArray. Lorsqu’il est utilisé avec les méthodes FileReference.upload() et FileReference.download(), le paramètre url.data peut uniquement être de type URLVariables ou String. 3) Dans le moteur d’exécution AIR (sandbox de sécurité de l’application), la méthode de l’objet URLRequest n’est ni GET ni POST (utilisez plutôt uploadEncoded()).
 
MemoryError — Cette erreur peut se produire pour les raisons suivantes : 1) Flash Player ne peut pas convertir le paramètre URLRequest.data du format UTF8 au format MBCS. Cette erreur se produit si l’objet URLRequest transmis à FileReference.upload() est configuré pour exécuter une opération GET et si System.useCodePage est réglé sur true. 2) Flash Player ne peut pas allouer de mémoire aux données POST. Cette erreur est applicable si l’objet URLRequest transmis à FileReference.upload() est configuré pour exécuter une opération POST.

Informations complémentaires

Eléments de l’API associés

    uploadUnencoded

()méthode 
public function uploadUnencoded(request:URLRequest):void

Versions du moteur d’exécution: AIR 1.0

Lance le chargement d’un fichier dans une URL sans aucun encodage. Tandis que la méthode upload() convertit le fichier en enveloppe de données de formulaire, la méthode uploadUnencoded() transmet le contenu du fichier tel quel dans le corps de la requête HTTP. Utilisez la méthode uploadUnencoded() si les données que vous souhaitez envoyer sont déjà codées dans un format pris en charge par le serveur de réception. En règle générale, la méthode uploadeUnencoded() est utilisée avec la méthode HTTP/WebDAV PUT.

Paramètres

request:URLRequest — L’objet URLRequest. La propriété url de cet objet doit contenir l’URL du script serveur configuré pour traiter le chargement via les appels HTTP POST. Dans certains navigateurs, la longueur des chaînes d’URL est limitée. Une longueur supérieure à 256 caractères peut échouer avec certains navigateurs ou serveurs. Si la valeur de ce paramètre est null, une exception est renvoyée.

L’URL peut être de type HTTP ou, pour les chargements sécurisés, de type HTTPS. Pour utiliser HTTPS, entrez une URL HTTPS dans le paramètre url. Si vous ne spécifiez pas de numéro de port dans le paramètre url, le port 80 pour HTTP et le port 443 pour HTTPS sont utilisés par défaut.

Pour envoyer des paramètres POST or GET au serveur, réglez la propriété data de l’objet URLRequest sur vos paramètres et la propriété method sur URLRequestMethod.POST ou URLRequestMethod.GET.


Evénements
open:Event — Distribué lors du démarrage d’une opération de chargement.
 
progress:ProgressEvent — Distribué régulièrement pendant l’opération de chargement de fichier.
 
complete:Event — Distribué en cas de réussite de l’opération de chargement.
 
uploadCompleteData:DataEvent — Distribué après réception des données par le serveur suite à un chargement de fichier réussi.
 
securityError:SecurityErrorEvent — Distribué lorsqu’un chargement échoue en raison d’une violation de la sécurité.
 
httpStatus:HTTPStatusEvent — Distribué lorsqu’un chargement échoue en raison d’une erreur HTTP.
 
httpResponseStatus:HTTPStatusEvent — L’opération de chargement aboutit et le serveur renvoie une URL de réponse, ainsi que des en-têtes de réponse.
 
ioError:IOErrorEvent — Invoqué dans l’un des cas suivants :
  • Le chargement échoue à la suite d’une erreur d’entrée/de sortie survenue au cours de la lecture, de l’écriture ou de la transmission du fichier par Adobe AIR.
  • Le chargement échoue en raison d’une tentative de chargement d’un fichier vers un serveur nécessitant une authentification (un nom d’utilisateur et un mot de passe, par exemple). Lors du chargement, les utilisateurs ne peuvent pas entrer des mots de passe.
  • Le chargement échoue car le paramètre url contient un protocole non valide. La méthode FileReference.upload() doit utiliser HTTP ou HTTPS.

Valeur émise
SecurityError — Les fichiers SWF non approuvés au niveau local ne peuvent pas communiquer avec Internet. Pour contourner cette restriction, reclassifiez le fichier SWF en tant que fichier local avec accès au réseau ou en tant que fichier approuvé. Cette exception est renvoyée, accompagnée d’un message indiquant le nom du fichier local et l’URL qui ne sont pas accessibles.
 
IllegalOperationError — Renvoyé dans les cas suivants : 1) Une autre session browse FileReference ou FileReferenceList est en cours. Il est impossible d’exécuter plusieurs sessions de recherche de fichiers simultanément. 2) Le paramètre URL n’est pas un chemin ou un protocole valide. Le chargement des fichiers doit se faire via HTTP.

Eléments de l’API associés

Détails de l’événement

cancel

Evénement
Type d’objet d’événement: flash.events.Event
propriété Event.type = flash.events.Event.CANCEL

Version du langage: ActionScript 3.0
Versions du moteur d’exécution: AIR 1.0, Flash Player 9

Distribué lorsqu’un chargement ou un téléchargement de fichiers est annulé par l’utilisateur via la boîte de dialogue de recherche de fichiers. Flash Player ne distribue pas cet événement si l’utilisateur annule un chargement ou un téléchargement selon un autre procédé (en fermant le navigateur ou en arrêtant l’application active).

La constante Event.CANCEL définit la valeur de la propriété type d’un objet événement cancel.

Les propriétés de cet événement sont les suivantes :

PropriétéValeur
bubblesfalse
cancelablefalse ; il n’existe aucun comportement par défaut à annuler.
currentTargetL’objet qui traite activement l’objet Event avec un écouteur d’événements.
targetRéférence à l’objet pour lequel l’opération est annulée.

Exemple  ( Comment utiliser cet exemple )

L’exemple suivant illustre l’utilisation de l’objet d’événement download. Pour exécuter cet exemple, modifiez la propriété downloadURL.url pour qu’elle pointe sur une URL et un domaine existants, au lieu de l’adresse http://www fictive.[votreDomaine].com/SomeFile.pdf. Vous aurez peut-être besoin de compiler le fichier SWF avec l’option Protection de lecture locale définie sur Accéder au réseau seulement ou de mettre à jour vos paramètres de sécurité Flash Player pour autoriser ce fichier à accéder au réseau.
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

Evénement  
Type d’objet d’événement: flash.events.Event
propriété Event.type = flash.events.Event.COMPLETE

Version du langage: ActionScript 3.0
Versions du moteur d’exécution: AIR 1.0, Flash Player 9

Distribué à la fin d’un téléchargement ou lorsqu’un chargement génère le code d’état HTTP 200. Dans le cas d’un téléchargement, cet événement est distribué lorsque Flash Player ou Adobe AIR achève la totalité du téléchargement du fichier dans le disque. Dans le cas d’un chargement, cet événement est distribué lorsque Flash Player ou Adobe AIR reçoit le code d’état HTTP 200 du serveur recevant la transmission.

La constante Event.COMPLETE définit la valeur de la propriété type d’un objet événement complete.

Les propriétés de cet événement sont les suivantes :

PropriétéValeur
bubblesfalse
cancelablefalse ; il n’existe aucun comportement par défaut à annuler.
currentTargetL’objet qui traite activement l’objet Event avec un écouteur d’événements.
targetObjet réseau dont le chargement est terminé.

Exemple  ( Comment utiliser cet exemple )

L’exemple suivant illustre l’utilisation de l’objet d’événement complete. Pour exécuter cet exemple, modifiez la propriété downloadURL.url pour qu’elle pointe sur une URL et un domaine existants, au lieu de l’adresse http://www fictive.[votreDomaine].com/SomeFile.pdf. Vous aurez peut-être besoin de compiler le fichier SWF avec l’option Protection de lecture locale définie sur Accéder au réseau seulement ou de mettre à jour vos paramètres de sécurité Flash Player pour autoriser ce fichier à accéder au réseau.
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);
        }
    }
}

Eléments de l’API associés

    

httpResponseStatus

Evénement  
Type d’objet d’événement: flash.events.HTTPStatusEvent
propriété HTTPStatusEvent.type = flash.events.HTTPStatusEvent.HTTP_RESPONSE_STATUS

Version du langage: ActionScript 3.0
Versions du moteur d’exécution: AIR 1.0, AIR 1.0

Distribué si un appel de la méthode upload() ou uploadUnencoded() tente d’accéder aux données via HTTP, et si Adobe AIR est capable de détecter et de renvoyer le code d’état de la requête.

Contrairement à l’événement httpStatus, l’événement httpResponseStatus est renvoyé avant toute donnée de réponse. De plus, l’événement httpResponseStatus inclut des valeurs pour les propriétés responseHeaders et responseURL (qui ne sont pas définies pour un événement httpStatus. Notez que httpResponseStatus (le cas échéant) est envoyé avant (et en complément de) tout événement complete ou error.

La constante HTTPStatusEvent.HTTP_RESPONSE_STATUS définit la valeur de la propriété type d’un objet événement httpResponseStatus.

Les propriétés de cet événement sont les suivantes :

PropriétéValeur
bubblesfalse
cancelablefalse ; il n’existe aucun comportement par défaut à annuler.
currentTargetL’objet qui traite activement l’objet Event avec un écouteur d’événements.
responseURLL’URL de laquelle la réponse a été renvoyée.
responseHeadersLes en-têtes de réponse que la réponse a renvoyés, sous la forme d’un tableau d’objets URLRequestHeader.
statusLe code d’état HTTP renvoyé par le serveur.
redirectedIndique si la réponse est le résultat d’une redirection.
targetL’objet réseau recevant un code d’état HTTP.

Eléments de l’API associés

httpStatus

Evénement  
Type d’objet d’événement: flash.events.HTTPStatusEvent
propriété HTTPStatusEvent.type = flash.events.HTTPStatusEvent.HTTP_STATUS

Version du langage: ActionScript 3.0
Versions du moteur d’exécution: AIR 1.0, Flash Player 9

Distribué lorsqu’un chargement échoue et qu’il existe un code d’état HTTP décrivant l’échec. L’événement httpStatus est distribué et suivi de l’événement ioError.

L’événement httpStatus est uniquement distribué en cas d’échec d’un chargement. Dans le cas de contenu s’exécutant dans Flash Player, cet événement ne s’applique pas aux échecs de téléchargement. Si un téléchargement échoue en raison d’une erreur HTTP, l’erreur est signalée en tant qu’erreur d’E/S.

La constante HTTPStatusEvent.HTTP_STATUS définit la valeur de la propriété type d’un objet événement httpStatus.

Les propriétés de cet événement sont les suivantes :

PropriétéValeur
bubblesfalse
cancelablefalse ; il n’existe aucun comportement par défaut à annuler.
currentTargetL’objet qui traite activement l’objet Event avec un écouteur d’événements.
statusLe code d’état HTTP renvoyé par le serveur.
targetL’objet réseau recevant un code d’état HTTP.

Eléments de l’API associés

ioError

Evénement  
Type d’objet d’événement: flash.events.IOErrorEvent
propriété IOErrorEvent.type = flash.events.IOErrorEvent.IO_ERROR

Version du langage: ActionScript 3.0
Versions du moteur d’exécution: AIR 1.0, Flash Player 9

Distribué lors de l’échec de l’opération de chargement ou de téléchargement. Un transfert de fichiers peut échouer pour l’une des raisons suivantes :

  • Une erreur d’entrée/sortie se produit lors de la lecture, l’écriture ou la transmission du fichier.
  • Le fichier SWF tente de charger un fichier sur un serveur nécessitant une authentification (un nom d’utilisateur et un mot de passe, par exemple). Au cours du chargement, Flash Player ou Adobe AIR ne permet pas aux utilisateurs d’entrer des mots de passe. Si un fichier SWF tente de charger un fichier vers un serveur nécessitant une authentification, le chargement échoue.
  • Le fichier SWF tente de télécharger un fichier à partir d’un serveur nécessitant une authentification, dans le lecteur autonome ou externe. Au cours du téléchargement, les lecteurs autonomes et externes ne permettent pas aux utilisateurs d’entrer des mots de passe. Si un fichier SWF présent dans ces lecteurs tente de télécharger un fichier à partir d’un serveur nécessitant une authentification, le téléchargement échoue. Le téléchargement de fichiers réussit uniquement via les lecteurs avec contrôle ActiveX et plug-in de navigation, ainsi que dans le moteur d’exécution Adobe AIR.
  • La valeur transmise au paramètre url dans la méthode upload() contient un protocole non valide. Les protocoles valides sont HTTP et HTTPS.

Important : seules les applications s’exécutant dans un navigateur (via le module de navigation ou le contrôle ActiveX), ainsi que le contenu s’exécutant dans Adobe AIR, peuvent proposer une boîte de dialogue pour inviter l’utilisateur à s’authentifier avec un nom d’utilisateur et un mot de passe, et ceci uniquement pour les téléchargements. Le transfert de fichiers échoue si le chargement est effectué à l’aide du plug-in ou du contrôle ActiveX de Flash Player, ou si un chargement/téléchargement est effectué par le biais du lecteur autonome ou externe.

Définit la valeur de la propriété type d’un objet d’événement ioError.

Les propriétés de cet événement sont les suivantes :

PropriétéValeur
bubblesfalse
cancelablefalse ; il n’existe aucun comportement par défaut à annuler.
currentTargetL’objet qui traite activement l’objet Event avec un écouteur d’événements.
errorIDUn numéro de référence associé à l’erreur spécifique (AIR uniquement).
targetObjet réseau sur lequel l’erreur d’entrée/sortie s’est produite.
textTexte à afficher en tant que message d’erreur.

Eléments de l’API associés

open

Evénement  
Type d’objet d’événement: flash.events.Event
propriété Event.type = flash.events.Event.OPEN

Version du langage: ActionScript 3.0
Versions du moteur d’exécution: AIR 1.0, Flash Player 9

Distribué au début d’une opération de chargement ou de téléchargement.

La constante Event.OPEN définit la valeur de la propriété type d’un objet événement open.

Les propriétés de cet événement sont les suivantes :

PropriétéValeur
bubblesfalse
cancelablefalse ; il n’existe aucun comportement par défaut à annuler.
currentTargetL’objet qui traite activement l’objet Event avec un écouteur d’événements.
targetObjet réseau qui a ouvert une connexion.

Exemple  ( Comment utiliser cet exemple )

L’exemple suivant illustre l’emploi de l’objet événement download. Pour exécuter cet exemple, modifiez la propriété downloadURL.url pour qu’elle pointe sur une URL et un domaine existants, au lieu de l’adresse http://www fictive.[votreDomaine].com/SomeFile.pdf. Vous aurez peut-être besoin de compiler le fichier SWF avec l’option Protection de lecture locale définie sur Accéder au réseau seulement ou de mettre à jour vos paramètres de sécurité Flash Player pour autoriser ce fichier à accéder au réseau.
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);
        }
    }
}

Eléments de l’API associés

    

permissionStatus

Evénement  
Type d’objet d’événement: flash.events.PermissionEvent
propriété PermissionEvent.type = flash.events.PermissionEvent.PERMISSION_STATUS

Version du langage: ActionScript 3.0
Versions du moteur d’exécution: AIR 24.0

Distribué lorsque l’application demande l’autorisation d’accéder au système de fichiers. Vérifiez la valeur de la propriété status pour déterminer si l’autorisation a été accordée ou refusée.

Eléments de l’API associés

progress

Evénement  
Type d’objet d’événement: flash.events.ProgressEvent
propriété ProgressEvent.type = flash.events.ProgressEvent.PROGRESS

Version du langage: ActionScript 3.0
Versions du moteur d’exécution: AIR 1.0, Flash Player 9

Distribué régulièrement pendant l’opération de chargement ou de téléchargement. L’événement progress est distribué pendant que Flash Player transmet des octets à un serveur, et il est déclenché régulièrement pendant la transmission, même si, au final, elle n’aboutit pas. Pour déterminer si la transmission du fichier est entièrement terminée, et à quel moment, écoutez l’événement complete.

Il arrive que des événements progress ne soient pas reçus. Lorsque le fichier transmis est très petit ou lorsque le chargement ou le téléchargement se déroule très rapidement, par exemple, il se peut qu’aucun événement progress ne soit distribué.

La progression du chargement d’un fichier ne peut pas être déterminée sur les plateformes Macintosh avec version antérieure à OS X 10.3. L’événement progress est appelé au cours du chargement, mais la valeur de la propriété bytesLoaded de l’événement progress correspond à -1, ce qui indique que la progression ne peut pas être identifiée.

Définit la valeur de la propriété type d’un objet événement progress.

Les propriétés de cet événement sont les suivantes :

PropriétéValeur
bubblesfalse
bytesLoadedNombre d’éléments ou d’octets chargés lors du traitement de l’événement par l’écouteur.
bytesTotalNombre total d’éléments ou d’octets qui seront chargés si le processus de chargement aboutit.
cancelablefalse ; il n’existe aucun comportement par défaut à annuler.
currentTargetL’objet qui traite activement l’objet Event avec un écouteur d’événements.
targetObjet indiquant la progression.

Exemple  ( Comment utiliser cet exemple )

L’exemple suivant illustre l’utilisation de l’objet d’événement progress. Pour exécuter cet exemple, modifiez la propriété downloadURL.url pour qu’elle pointe sur une URL et un domaine existants, au lieu de l’adresse http://www fictive.[votreDomaine].com/SomeFile.pdf. Vous aurez peut-être besoin de compiler le fichier SWF avec l’option Protection de lecture locale définie sur Accéder au réseau seulement ou de mettre à jour vos paramètres de sécurité Flash Player pour autoriser ce fichier à accéder au réseau.
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);
        }
    }
}

Eléments de l’API associés

securityError

Evénement  
Type d’objet d’événement: flash.events.SecurityErrorEvent
propriété SecurityErrorEvent.type = flash.events.SecurityErrorEvent.SECURITY_ERROR

Version du langage: ActionScript 3.0
Versions du moteur d’exécution: AIR 1.0, Flash Player 9

Distribué lorsqu’un appel de la méthode FileReference.upload() ou FileReference.download() tente de charger un fichier sur un serveur ou d’extraire un fichier d’un serveur qui se trouve hors du sandbox de sécurité de l’appelant. En règle générale, la valeur de la propriété text qui décrit l’erreur spécifique qui s’est produite correspond à securitySandboxError. Le fichier SWF effectuant l’appel a peut-être tenté d’accéder à un fichier SWF hors de son domaine et sans l’autorisation nécessaire. Vous pouvez tenter de remédier à cette erreur à l’aide d’un fichier de régulation d’URL.

Dans Adobe AIR, le contenu du sandbox de sécurité de l’application n’est pas soumis à ces restrictions de sécurité.

Dans Adobe AIR, le contenu du sandbox de sécurité de l’application n’est pas soumis à ces restrictions de sécurité.

La constante SecurityErrorEvent.SECURITY_ERROR définit la valeur de la propriété type d’un objet événement securityError.

Les propriétés de cet événement sont les suivantes :

PropriétéValeur
bubblesfalse
cancelablefalse ; il n’existe aucun comportement par défaut à annuler.
currentTargetL’objet qui traite activement l’objet Event avec un écouteur d’événements.
targetObjet réseau signalant l’erreur de sécurité
textTexte à afficher en tant que message d’erreur.

Eléments de l’API associés

select

Evénement  
Type d’objet d’événement: flash.events.Event
propriété Event.type = flash.events.Event.SELECT

Version du langage: ActionScript 3.0
Versions du moteur d’exécution: AIR 1.0, Flash Player 9

Distribué lorsque l’utilisateur sélectionne un fichier à charger ou télécharger dans la boîte de dialogue de recherche de fichiers (cette boîte de dialogue s’ouvre quand vous appelez la méthode FileReference.browse(), FileReferenceList.browse() ou FileReference.download()). Lorsque l’utilisateur sélectionne un fichier et confirme l’opération (par exemple, en cliquant sur OK), les propriétés de l’objet FileReference sont renseignées.

Dans le cas de contenu s’exécutant dans Flash Player ou hors du sandbox de sécurité de l’application dans le moteur d’exécution Adobe AIR, l’événement select fonctionne légèrement différemment selon la méthode qui l’appelle. Lorsque l’événement select est distribué après un appel à browse(), Flash Player ou l’application AIR peut lire toutes les propriétés de l’objet FileReference, car le fichier choisi se trouve dans le système de fichiers local. Lorsque l’événement select se produit après un appel à download(), Flash Player ou l’application AIR peut uniquement lire la propriété name, car le fichier n’a pas encore été téléchargé dans le système de fichiers local au moment où l’événement select se produit. Une fois le fichier téléchargé et l’événement complete distribué, Flash Player ou l’application AIR peut lire toutes les autres propriétés de l’objet FileReference.

La constante Event.SELECT définit la valeur de la propriété type d’un objet événement select.

Les propriétés de cet événement sont les suivantes :

PropriétéValeur
bubblesfalse
cancelablefalse ; il n’existe aucun comportement par défaut à annuler.
currentTargetL’objet qui traite activement l’objet Event avec un écouteur d’événements.
targetObjet sur lequel un élément a été sélectionné.

Exemple  ( Comment utiliser cet exemple )

L’exemple suivant illustre l’utilisation de l’objet d’événement select. Pour exécuter cet exemple, modifiez la propriété downloadURL.url de sorte qu’elle pointe vers un domaine et un fichier réels, au lieu de l’adresse fictive http://www.[votreDomaine].com/SomeFile.pdf. Il se peut que vous deviez également compiler le fichier SWF en réglant Sécurité de lecture locale sur Accès au réseau uniquement ou mettre à jour les paramètres de sécurité de Flash Player de façon à permettre un accès réseau à ce fichier. Pour que cet exemple s’exécute à partir de votre bureau, un fichier crossdomain.xml doit également résider sur votre serveur. Si la fonction ioErrorHandler() est déclenchée, vous devrez probablement mettre à jour la définition de la propriété uploadURL avec une URL valide configurée pour recevoir les chargements.
 
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

Evénement  
Type d’objet d’événement: flash.events.DataEvent
propriété DataEvent.type = flash.events.DataEvent.UPLOAD_COMPLETE_DATA

Version du langage: ActionScript 3.0
Versions du moteur d’exécution: AIR 1.0, Flash Player 9.0.28.0

Distribué après réception des données par le serveur suite à un chargement réussi. Cet événement n’est pas distribué si le serveur ne renvoie pas les données.

Définit la valeur de la propriété type d’un objet événement uploadCompleteData.

Les propriétés de cet événement sont les suivantes :

PropriétéValeur
bubblesfalse
cancelablefalse ; il n’existe aucun comportement par défaut à annuler.
currentTargetL’objet qui traite activement l’objet Event avec un écouteur d’événements.
dataLes données brutes sont renvoyées par le serveur après le chargement réussi d’un fichier.
targetObjet FileReference qui reçoit les données après un chargement réussi.
FileReferenceExample.as

L’exemple suivant affiche le format de données et l’état d’un fichier chargé à l’exécution.

Remarque : pour exécuter cet exemple, modifiez la propriété uploadURL.url pour qu’elle pointe sur une URL réelle, au lieu de l’adresse fictive de l’exemple. L’URL doit pointer sur un fichier nommé yourUploadHandlerScript.cfm dans le répertoire Web racine de l’URL spécifiée. Selon votre configuration, vous aurez peut-être besoin de compiler le fichier SWF avec l’option Protection de lecture locale définie sur Accéder au réseau seulement ou de mettre à jour vos paramètres de sécurité Flash Player pour autoriser ce fichier à accéder au réseau.

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);
        }
    }
}




[ X ]Pourquoi existe-t-il du contenu en anglais ?
Certaines parties du Guide de référence ActionScript 3.0 sont en anglais

Tout le contenu du Guide de référence ActionScript 3.0 n’a pas été traduit dans toutes les langues. Si un élément de langage n’est pas traduit, il s’affiche en anglais. Par exemple, la classe ga.controls.HelpBox n’est traduite dans aucune langue. Ainsi, dans la version française du guide de référence, la classe ga.controls.HelpBox apparaît en anglais.