Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
Sharehoster Download links abrufen
Tauron
myCSharp.de - Member



Dabei seit:
Beiträge: 12

Themenstarter:

Sharehoster Download links abrufen

beantworten | zitieren | melden

Ich benutze einen fertiges Brwoser-Control (Awesomium), dass Download links direkt per Event weiter gibt.
Bei verschiedenen Sharehostern(z.b. Rapidshare, Uploaded.to) werden die Datei Links selten direkt zurück gegeben und ich bin auch nach längerer Suche in verschiedenen Foren und im Iternet nicht fündig geworden wie ein Browser(z.b. IE, Firefox, chrome) den Link zur konkreten Datei findet und diese anschließend runterlädt.
private Nachricht | Beiträge des Benutzers
UZI
myCSharp.de - Member



Dabei seit:
Beiträge: 189

beantworten | zitieren | melden

Es gibt bei solchen Hostern keinen direkten allgemein immer gültigen Downloadlink.
Die Links werden nur auf Anfrage erstellt und sind auch nur eine bestimmte Zeit lang gültig.
Du drückst also z.B. auf einen Button der Link wird dynamisch generiert und du wirst weitergeleitet auf den Link (also zur eigentlichen Datei)
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von UZI am .
private Nachricht | Beiträge des Benutzers
Tauron
myCSharp.de - Member



Dabei seit:
Beiträge: 12

Themenstarter:

beantworten | zitieren | melden

Das Problem ist, dass jeder Browser zu wießen scheint wo er dann danach zu suchen hat.
private Nachricht | Beiträge des Benutzers
Darth Maim
myCSharp.de - Member



Dabei seit:
Beiträge: 216

beantworten | zitieren | melden

Wieso suchen? Wenn die Adresse www.meinsharehosterexample.de/file/abc42xyz1337 ist, dann ist der Pfad halt so. In Content-Disposition steht dann, unter welchem Namen die Datei dann lokal gespeichert werden soll. Guck dir mal den Thread an: "Echten" Dateinamen über HTTPWebresponse auslesen.

Darth Maim
private Nachricht | Beiträge des Benutzers
Tauron
myCSharp.de - Member



Dabei seit:
Beiträge: 12

Themenstarter:

beantworten | zitieren | melden

Bei RapidShare gibt es keinen solchen Header und das Respones enhält ach nicht den richtigen download sondern nur eine datei mit einer Fehlermeldung.
private Nachricht | Beiträge des Benutzers
Darth Maim
myCSharp.de - Member



Dabei seit:
Beiträge: 216

beantworten | zitieren | melden

Ich habe das grade nochmal bei Rapidshare getestet:
  1. Content-Disposition:attachment; filename="test.txt"
  2. Im Querystring des Downloadbuttons steht: ...&filename=test.txt&...
  3. Der eigentlich Downloadlink ist https://rapidshare.com/files/3283506305/test.txt (hört also mit Dateinamen auf)
  4. Nach dem Downloadlink wird man auf folgende Seite weitergeleitet: https://rapidshare.com/#!download|475p5|3283506305|test.txt|0|R~D5FF***D6|0|0
    Da ist test.txt auch enthalten.
Unterm Strich: Viele Möglichkeiten an den Dateinamen zu kommen...

Darth Maim
private Nachricht | Beiträge des Benutzers
UZI
myCSharp.de - Member



Dabei seit:
Beiträge: 189

beantworten | zitieren | melden

So wie ich das verstanden habe, geht es ja auch gar nicht um den Dateinamen (auch wenn die von Darth Maim gennanten Möglichkeiten vl. bei rapidshare klappen aber bei anderen nicht)
Nur im Grunde verstehe ich immer noch nicht deine Frage.
Zitat
Das Problem ist, dass jeder Browser zu wießen scheint wo er dann danach zu suchen hat.
Nach was zu suchen hat?
Der Browser muss nicht suchen er wird direkt auf den Link der Datei geleitet.
private Nachricht | Beiträge des Benutzers
Tauron
myCSharp.de - Member



Dabei seit:
Beiträge: 12

Themenstarter:

beantworten | zitieren | melden

Das Problem ist, wenn ich ein WebRequest erstelle, dann werde ich nich auf die Seite verwißen.
Also war meine frage wie das funktioniert. Und nicht nur bei RapidShare.

Anders ausgedrückt wie kann der Brwoser erkennen, dass er im fall von RapidShare den Datei namen hinten drann hängen muss.
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Tauron am .
private Nachricht | Beiträge des Benutzers
Abt
myCSharp.de - Team

Avatar #avatar-4119.png


Dabei seit:
Beiträge: 15.757

beantworten | zitieren | melden

Kann das sein, dass Dir hier ein wenig die Grundlagen fehlen?

Es gibt verschiedene Arten, wie man einen Browser automatisch weiterleiten kann. Neben Meta-Tags auch Javascript oder über den HTTP-Header. Den Dateinamen zum Download selbst erhält der Browser normalerwese über den "Content-Disposition".

Den Rest hat Darth Maim bereits gesagt.
Eine 100%tige Erklärung findest Du sicher in einem RFC Dokument. Aber Grundlegendes ist eigentlich gesagt.
private Nachricht | Beiträge des Benutzers
talla
myCSharp.de - Experte

Avatar #avatar-3214.jpg


Dabei seit:
Beiträge: 6.862
Herkunft: Esslingen

beantworten | zitieren | melden

Wobei bei den Hostern auch oft dazukommt, dass sie gar keinen Direktdownload anbieten, sondern erst ein temporär gültiger Downloadlink auf einer Seite erzeugt werden muss, bevor man über diesen Link den Download erst starten kann. Dieses Erzeugen muss dann auch automatisiert werden und das kann, wenn man viele Hoster unterstützen will, ziemlich umfangreich werden. Downloadmanager wie JDownload z.B. sind laufen am korrigieren der notwendigen Routinen, da die Hoster immer wieder mal was ändern.
Baka wa shinanakya naoranai.

Mein XING Profil.
private Nachricht | Beiträge des Benutzers
Tauron
myCSharp.de - Member



Dabei seit:
Beiträge: 12

Themenstarter:

beantworten | zitieren | melden

Ich bedanke mich und werd verschuchen das was hier steht in die tat um zu setzen.
private Nachricht | Beiträge des Benutzers