Einzelnen Beitrag anzeigen

Benutzerbild von lbccaleb
lbccaleb

Registriert seit: 25. Mai 2006
Ort: Rostock / Bremen
2.037 Beiträge
 
Delphi 7 Enterprise
 
#8

AW: Links verarbeiten

  Alt 31. Mai 2013, 20:01
Hat jemand eine Idee oder eine Prozedur, die möglichst alle potenziellen Fehler ausschließen und die Links mit den ,,Basedomain" erweitern kann, sodass ich die Datei mit der idhttp-Komponenten downloaden kann?
Such den ersten : in der URL, sofern vorhanden, und guck ob der Text davor was anderes als http ist. Wenn ja, abbrechen.
Wenn kein http:// vorkommt und die URL mit einem / beginnt: Setze "http://domainname" vor die URL.
Wenn kein http:// vorkommt und die URL nicht mit einem / beginnt: Setze "http://domainname/verzeichnis der quellseite" vor die URL.

Ja, das sollte es eigentlich soweit sein. Es gibt aber noch (selten) das <base>-Tag. Dann müsstest du im zweiten Fall stattdessen die URL aus dem Base-Tag nehmen und im ersten Fall die Domain von der URL des Base-Tags.
Ist nicht so einfach, da es in HTML auch die möglichkeit gibt, in vorigen Ordnerstrukturen zu suchen, also sowas wie:

"../../../"...

Und das ist selten leicht im Code zu filtern
Martin
MFG Caleb
TheSmallOne (MediaPlayer)
Die Dinge werden berechenbar, wenn man die Natur einer Sache durchschaut hat (Blade)
  Mit Zitat antworten Zitat