Toon posts:

[flash] download forceren, evt. met header en contenttype?

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hallo mensen.. ik weet niet zeker of ik dit topic hier wel thuishoort (in plaats van Webdesign & Graphics dus), maar ik vond dit persoonlijk de beste plaats.

Kan ik in flash een download forceren?
Ik wil in flash een bestand streamen, en vervolgens dit bestand naar de browser zenden. In ASP zou ik dat ongeveer als volgt doen:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Set fs=Server.CreateObject("Scripting.FileSystemObject")
Set f=fs.GetFile(bestand)
filesize = f.size
set f=nothing
set f=fs.OpenTextFile(bestand, 1, false, -1)
  
Response.AddHeader "Content-Disposition","attachment; filename=bla.zip"
Response.AddHeader "Content-Length", filesize
Response.ContentType = "application/octet-stream"
Response.Clear
Response.Flush
Response.BinaryWrite(f.Read(filesize))

set f=nothing
set fs=nothing


Als ik dus dit script uitvoer, dan snapt de browser dat er een bestand moet worden gedownload. Kan ik dus net zoiets in flash voor elkaar krijgen? Alvast bedankt...

  • curry684
  • Registratie: Juni 2000
  • Laatst online: 13-08 16:46

curry684

left part of the evil twins

It's all in the FAQ. Moved dus. :P

edit:
Daar ben je overigens reeds eerder op gewezen

[ Voor 40% gewijzigd door curry684 op 26-06-2003 10:33 ]

Professionele website nodig?


  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 19-08 22:14

Bosmonster

*zucht*

Flash = clientside, ASP = serverside..

Dan kun je je wel voorstellen waarom zoiets nooit direct gaat werken :)

Gewoon linken naar het ASP/PHP/JSP/whatever bestand dus..

[ Voor 22% gewijzigd door Bosmonster op 26-06-2003 11:05 ]


Verwijderd

Topicstarter
Ik ben geen flash expert, maar ik kan wel externe bestanden in flash laden. In ieder geval kan ik andere movieclips en foto's vanuit flash benaderen. Uiteraard niet direct van de server, maar elk bestand wat via http te bereiken is, kan ik waarschijnlijk ook in flash laden, toch?

Het gaat er dus om dat ik een bestand wat ik in flash geladen heb via http als download aan de browser kan aanbieden. Ik hoef dus geen toegang te hebben tot het filesystem op de server...

  • McVirusS
  • Registratie: Januari 2000
  • Laatst online: 21-08 10:46
Wat jij waarschijnlijk wilt is een getURL naar het ASP bestand uit je topicstart.

Verwijderd

Topicstarter
Nee... Ik wil geen geturl doen. Ik wil echt een bestand in flash zelf importeren, en het dan als download aanbieden.

Verwijderd

Topicstarter
Heel simpel gesteld: Ik heb een mp3 bestand in flash zitten. Dat mp3 bestand wil ik de bezoeker laten downloaden, direct uit flash zelf. Ik wil dus geen geturl doen, maar het mp3 bestand vanuit flash zelf naar de browser sturen, zodat de browser aan de contenttype (of iets dergelijks) het vervolgens herkent als zijnde een download, en vervolgens het mp3 bestand naar de harde schijf gaat downloaden.

  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 19-08 22:14

Bosmonster

*zucht*

Je wilt iets naar de browser sturen, maar je zit al in de browser. Dat is dus het hele probleem :) Je wilt Flash als server laten fungeren en dat kan voor zover ik weet gewoon niet :)

  • hobbit_be
  • Registratie: November 2002
  • Laatst online: 04-07-2025
Verwijderd schreef op 26 June 2003 @ 13:09:
Heel simpel gesteld: Ik heb een mp3 bestand in flash zitten. Dat mp3 bestand wil ik de bezoeker laten downloaden, direct uit flash zelf. Ik wil dus geen geturl doen, maar het mp3 bestand vanuit flash zelf naar de browser sturen, zodat de browser aan de contenttype (of iets dergelijks) het vervolgens herkent als zijnde een download, en vervolgens het mp3 bestand naar de harde schijf gaat downloaden.
Gaat niet. Punt.

Je kunt alleen een button/link maken die een URL naar een file doet. Maar dit doe je dan nog beter via een javascript in je HTML en dan een javascript:giveFile("http://www.mp3.com/jazzy.mp3");

  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 19-08 22:14

Bosmonster

*zucht*

hobbit_be schreef op 26 June 2003 @ 14:50:
[...]


Gaat niet. Punt.

Je kunt alleen een button/link maken die een URL naar een file doet. Maar dit doe je dan nog beter via een javascript in je HTML en dan een javascript:giveFile("http://www.mp3.com/jazzy.mp3");
giveFile() ???

Verwijderd

Topicstarter
Thanks mensen.. na het één en ander onderzocht te hebben, kom ik ook tot de conclusie dat datgene wat ik wil bereiken niet mogelijk is in flash. Maar, bestanden met de volgende extenties: mp3, swf, gif, jpg en png kan je zondermeer overal vandaan inladen in je flash. En met wat getruuck met een Iframe kan je vervolgens ook een download forceren in IE. Ik wil alleen alle typen bestanden kunnen inladen, en dat blijkt helaas alleen binnen je eigen domein mogelijk te zijn...

  • McVirusS
  • Registratie: Januari 2000
  • Laatst online: 21-08 10:46
Volgens mij probeer je iets op een hele rare manier te bewerkstelligen, leg eens uit wat je nou precies wilt want ik snap absoluut niet waarom je iets in Flash wilt inlezen terwijl je volgens mij gewoon een lijstje met bestanden die gedownload moeten worden wilt aanbieden.

Verwijderd

Topicstarter
Ik ben met een hobby site bezig waar mensen muziek kunnen uploaden en downloaden. Dat gaat allemaal erg leuk, maar ik heb nu een bandbreedte probleem. Om dit probleem op te lossen, wil ik gebruik gaan maken van andere servers om de bestanden over te distribueren, zodat alle downloads niet alleen meer via mijn server lopen, en het dataverkeer een beetje teruggedrongen gaat worden. Ik heb in het bedrijf waar ik werk mensen zitten die mij hier bij kunnen helpen: ze kunnen een soort ftp-client schrijven die automatisch bestanden met de server synchroniseerd. Mensen die dus een beetje capaciteit hebben, kunnen vervolgens deze clients installeren, en zodoende verspreid ik de bestanden over een aantal snelle en minder snelle servers.

Zodra een bezoeker van de site een bestand wil downloaden, dan wil ik het liefst dat dit bestand van meerdere bronnen tegelijkertijd wordt gedownload. Je wil dat dit aan de client kant gebeurd, zodat mijn server niet gebruikt wordt voor het downloaden. Daarnaast probeer ik het voor elkaar te krijgen dat een bestand via meerdere bronnen gedownload kan worden. Je wil niet dat bezoekers hiervoor een speciaal programmatje moeten downloaden. Daarom probeerde ik hiervoor gebruik te maken van Flash, omdat bijna iedereen flash ondersteund. Maar het blijkt dat dit niet met flash gaat lukken, en dus hebben we besloten om Java te gaan gebruiken.

Eigenlijk lijkt het idee dus een beetje op de AudioGalaxy client, maar dan via Java. Hopelijk verklaard dit mijn vragen een beetje.

  • hobbit_be
  • Registratie: November 2002
  • Laatst online: 04-07-2025
Of gewoon bittorrent gebruiken ;)

en flash kan geen png dynamisch loaden...

Java lijkt mij ook de beste oplossing maar ik begin al te bibberen welke VM je wil ondersteunen?

Bosmonster: giveFile() was maar een 'foo-functie' om aan te tonen dat je in flash gewoon een javascript-functie kunt aanroepen.

  • GrimaceODespair
  • Registratie: December 2002
  • Laatst online: 22-08 08:05

GrimaceODespair

eens een tettenman, altijd ...

Heb je dan geen beveiligingsproblemen bij standaardinstellingen van browsers (download link van ander domein)? Of krijgt de client alleen jouw server te zien, en verdeel je zelf aan de achterkant?

[ Voor 10% gewijzigd door GrimaceODespair op 01-07-2003 01:01 ]

Wij onderbreken deze thread voor reclame:
http://kalders.be

Pagina: 1