Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Wie eine Internetdatei ohne Dateiendung laden? (https://www.delphipraxis.net/209972-wie-eine-internetdatei-ohne-dateiendung-laden.html)

Harry Stahl 13. Feb 2022 18:55


Wie eine Internetdatei ohne Dateiendung laden?
 
Ich möchte bestimmte Seiten aus dem Internet in eine HTML-Komponente laden und sie dort anzeigen (also nicht WebBrowser).

Soweit der Name bekannt ist oder einfach konstruierbar ist, ist das ja kein Problem, aber was mache ich, wenn kein richtiger Dateinamen angegeben ist, bzw. ermittelbar ist.

Ein Beispiel:

https://de.wikipedia.org/wiki/Liste_...aaten_der_Erde

Ich verwende

Delphi-Quellcode:
NetHTTPClient1.Get(SourceLink,ms);
um die Internetdatei in einen Stream zu laden, dann auf Platte zu speichern und in die HTML-Komponente zu laden.

Bei "https://www.focus.de" hänge ich für den SourceLink einfach noch ein "/index.html" dran und die Datei wird geladen. Bei solchen Links wie dem oben genannten wikipedia Link funktioniert das aber nicht.

Wie kann ich hier den Inhalt der angezeigten Seite laden (bzw. die pure HTML-Datei - dass ich mich um css, images und so selber noch kümmern muss, ist schon klar).

himitsu 13. Feb 2022 19:00

AW: Wie eine Internetdatei ohne Dateiendung laden?
 
Nicht willkührlich die URL ändern, sondern den Content-Typ auswerten.

Und wenn nicht, dann mußt du wohl anfangen die "MagicBytes" am Dateianfang auszuwerten.

Harry Stahl 13. Feb 2022 19:09

AW: Wie eine Internetdatei ohne Dateiendung laden?
 
Zitat:

Zitat von himitsu (Beitrag 1502110)
Nicht willkührlich die URL ändern, sondern den Content-Typ auswerten.

Und wenn nicht, dann mußt du wohl anfangen die "MagicBytes" am Dateianfang auszuwerten.

Oh, ich meinte nicht beim SourceLink hänge ich das dran, sondern bei der Datei, die ich herunterlade.

Außerdem stelle ich gerade fest, ich habe woanders einen Fehler gemacht (er lädt die URL doch), hat sich also erledigt....

Dalai 13. Feb 2022 19:14

AW: Wie eine Internetdatei ohne Dateiendung laden?
 
Der Content-Type steckt - wie auch andere Angaben wie Content-Length oder Last-Modified - in den Headern der Antwort des Servers. Keineswegs sollte man einfach annehmen, dass eine Seite immer index.html heißt. Der Server kann auch stattdessen eine Seite hanswilli.html oder irgendwas.php ausliefern.

Grüße
Dalai

Redeemer 13. Feb 2022 19:37

AW: Wie eine Internetdatei ohne Dateiendung laden?
 
Zitat:

Zitat von Dalai (Beitrag 1502112)
Der Content-Type steckt - wie auch andere Angaben wie Content-Length oder Last-Modified - in den Headern der Antwort des Servers. Keineswegs sollte man einfach annehmen, dass eine Seite immer index.html heißt. Der Server kann auch stattdessen eine Seite hanswilli.html oder irgendwas.php ausliefern.

Ein Teufelszeug dieses .htaccess! ;)


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:08 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz