Boas,Do lado do frontend, consegues fazer com que o utilizador tenha a sensacão de que é só um request, mas na realidade é feito um POST no servidor por cada ficheiro que for seleccionado. Se só quiseres um POST (o que me parece um pouco estranho, mas não conheco o teu caso...), podes usar Flash Remoting (AMFPHP, BlazeDS) e criar um servico que recebe um Array de ByteArray. Em Flash, consegues ler o data de um FileReference sem teres que o enviar para o servidor. Podes pegar nesses dados, e colocar cada um dos ficheiros num Array que envias para um servico. Porém, vais perder a capacidade de fazer um preloader, pois que eu saiba não tens forma de calcular a percentagem de envio quando se usa Flash Remoting.
Fica aqui algum código para ajudar a fazer upload de vários ficheiros com o FileReferenceList:
public function addFiles():void
{
fileReferenceList = new FileReferenceList();
fileReferenceList.addEventListener(Event.SELECT,
fileReferenceListSelectHandler);
fileReferenceList.browse();
}
protected function fileReferenceListSelectHandler(event:Event):void
{
for each (var fileReference:FileReference in
fileReferenceList.fileList)
{
var uploadRequest:URLRequest = new URLRequest(uploadURL);
uploadRequest.method = URLRequestMethod.POST
fileReference.upload(uploadRequest);
}
}
linkedIn <http://pt.linkedin.com/in/jsaleiro> João Saleiro
Chief Technology Officer
Tel: 00351 916 077 097
Email: [email protected] <mailto:[email protected]>
Skype: joao.saleiro <callto://pedro.arelo>
Webfuel Solutions <http://www.webfuel.pt> www.webfuel.pt
<http://www.webfuel.pt>
Lisbon, Portugal On 23-12-2010 13:51, Ruinaldo wrote:
aber se é de alguma forma possivel enviar vários ficheiros utilizando as3 através de um único request. Depois de ler a documentação do metodo upload do FileReferenceList, perdi um pouco a esperança de o conseguir fazer. Será que existe alguma forma?
-- Recebeu esta mensagem porque está inscrito no grupo "Mailing List da Comunidade Portuguesa de Rich Internet Applications - www.riapt.org" dos Grupos do Google. Para publicar uma mensagem neste grupo, envie um e-mail para [email protected]. Para anular a inscrição neste grupo, envie um e-mail para [email protected]. Para ver mais opções, visite este grupo em http://groups.google.com/group/riapt?hl=pt-PT.
<<inline: LinkedIn.gif>>
<<inline: Webfuel.gif>>
