AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Error 404 mit TIdHTTP

Ein Thema von Maekkelrajter · begonnen am 27. Aug 2020 · letzter Beitrag vom 29. Aug 2020
Antwort Antwort
Benutzerbild von Gausi
Gausi

Registriert seit: 17. Jul 2005
901 Beiträge
 
Delphi 11 Alexandria
 
#1

AW: Error 404 mit TIdHTTP

  Alt 27. Aug 2020, 15:57
Hat sich evtl. der Aufbau der Seite verändert, so dass deine Methode zum Finden der einzelnen Links jetzt ungültige URLs liefert?

Das ist zumindest meistens der Grund für Fehler in der Lyric-Suche in meinem Player.
Being smart will count for nothing if you don't make the world better. You have to use your smarts to count for something, to serve life, not death.
  Mit Zitat antworten Zitat
Delphi.Narium

Registriert seit: 27. Nov 2017
2.555 Beiträge
 
Delphi 7 Professional
 
#2

AW: Error 404 mit TIdHTTP

  Alt 27. Aug 2020, 16:17
Wenn ich im Browser auf https://open.spotify.com/ gehe und dort dann irgendeinen Link klicke, der 'ne Url in der Form 'https://open.spotify.com/playlist/' enthält, erhalte ich häufig Sorry, couldn't find that., als HTTP-Code also 404.

Haben die da ein Problem und nicht Du?
  Mit Zitat antworten Zitat
Maekkelrajter

Registriert seit: 8. Mär 2017
Ort: Köln
157 Beiträge
 
Delphi 12 Athens
 
#3

AW: Error 404 mit TIdHTTP

  Alt 27. Aug 2020, 16:50
Hat sich evtl. der Aufbau der Seite verändert, so dass deine Methode zum Finden der einzelnen Links jetzt ungültige URLs liefert?

Das ist zumindest meistens der Grund für Fehler in der Lyric-Suche in meinem Player.
Die Seite wird ja garnicht erst gefunden! Das ist ja das Problem!

Wenn ich im Browser auf https://open.spotify.com/ gehe und dort dann irgendeinen Link klicke, der 'ne Url in der Form 'https://open.spotify.com/playlist/' enthält, erhalte ich häufig Sorry, couldn't find that., als HTTP-Code also 404.

Haben die da ein Problem und nicht Du?
Das war auch mein erster Gedanke. Aber wieso 'finden' Firefox und Edge die Seite?

Gruß LP
  Mit Zitat antworten Zitat
Delphi.Narium

Registriert seit: 27. Nov 2017
2.555 Beiträge
 
Delphi 7 Professional
 
#4

AW: Error 404 mit TIdHTTP

  Alt 27. Aug 2020, 17:12
Welche Seite finden die bitte:

Die Tatsache, dass eine Fehlermeldung ausgegeben wird, ist nicht gleichbedeutend mit "Seite wurde gefunden".

HTTP-Code 404 heißt: Das Gesucht gibt es nicht.
HTTP-Code 404 heißt nicht: Es wird keine Ergebnisseite ausgegeben.

Auf der Webkonsole zeigt mir auch der FireFox an, dass er als Ergebnis HTTP-Code 404 bekommt.
Code:
https://open.spotify.com/playlist/621KN721wf1KvuZu8ZUgcw

GET https://open.spotify.com/playlist/621KN721wf1KvuZu8ZUgcw [HTTP/2.0 404 Not Found 171ms]
GET https://open.scdn.co/cdn/build/open/open.3d087318.css [HTTP/1.1 200 OK 0ms]
GET https://open.scdn.co/cdn/images/spotifylogo.a884cca3.svg [HTTP/1.1 200 OK 0ms]
GET https://open.scdn.co/cdn/images/home-icon.ba66757a.svg [HTTP/1.1 200 OK 0ms]
GET https://open.scdn.co/cdn/images/vinyl-top-layer.b56c3ccf.svg [HTTP/1.1 200 OK 0ms]
GET https://open.scdn.co/cdn/images/vinyl-bottom-layer.82d9f6ef.svg [HTTP/1.1 200 OK 0ms]
GET https://open.scdn.co/cdn/fonts/CircularSpUIv3T-Light.afd9ab26.woff2 [HTTP/1.1 200 OK 0ms]
GET https://open.scdn.co/cdn/fonts/CircularSpUIv3T-Bold.8d0a45cc.woff2 [HTTP/1.1 200 OK 0ms]
GET https://open.scdn.co/cdn/fonts/CircularSpUIv3T-Book.3466e0ec.woff2 [HTTP/1.1 200 OK 0ms]
GET https://open.scdn.co/cdn/fonts/CircularSpUICyrOnly-Book.6a858994.woff2 [HTTP/1.1 200 OK 0ms]
GET https://open.scdn.co/cdn/fonts/CircularSpUIAraOnly-Book.aaab109b.woff2 [HTTP/1.1 200 OK 0ms]
GET https://open.scdn.co/cdn/fonts/CircularSpUIHbrOnly-Book.cb36b6ec.woff2 [HTTP/1.1 200 OK 0ms]
Der HTTP-Code ist ein nummerischer Wert, der vom Server geliefert wird, damit der Client entscheiden kann, wie mit der Antwort umzugehen ist.

https://de.wikipedia.org/wiki/HTTP-Statuscode

Man kann auch grob sagen:

Browser finden grundsätzlich nichts.
Sie bitten jemanden, unter Angabe einer Url, etwas für sie zu suchen.
Der Suchende gibt mit Hilfe des HTTP-Statuscode bekannt, ob er was gefunden hat und liefert ggfls. ein entsprechendes Ergebnis (z. B. in Form einer HTML-Seite) aus.
Der Browser reagiert auf den HTTP-Statuscode.
Wird im Fehlerfalle vom Suchenden eine anzeigbare HTML-Seite geliefert, so zeigt der Browser diese an, andernfalls generiert er selbst eine entsprechende Fehlermeldung.
  Mit Zitat antworten Zitat
TiGü

Registriert seit: 6. Apr 2011
Ort: Berlin
3.073 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: Error 404 mit TIdHTTP

  Alt 28. Aug 2020, 09:26
Mal von all dem abgesehen...warum nimmst du nicht die öffentlich verfügbare WebAPI?
Da kannst du ganz bequem per REST dir JSON-Daten zu allen möglichen holen:

https://developer.spotify.com/documentation/web-api/

Ist auch relativ simpel und gut dokumentiert.
  Mit Zitat antworten Zitat
Maekkelrajter

Registriert seit: 8. Mär 2017
Ort: Köln
157 Beiträge
 
Delphi 12 Athens
 
#6

AW: Error 404 mit TIdHTTP

  Alt 28. Aug 2020, 10:13
Mal von all dem abgesehen...warum nimmst du nicht die öffentlich verfügbare WebAPI?
Da kannst du ganz bequem per REST dir JSON-Daten zu allen möglichen holen:

https://developer.spotify.com/documentation/web-api/

Ist auch relativ simpel und gut dokumentiert.
Als ich mich vor Jahren erstmalig mit der Materie beschäftigt habe, war, wenn ich mich recht erinnere, die Spotify WebAPI nur für Inhaber eines Premium-Accounts verfügbar. Das scheint mittlerweile anders zu sein. Schon seit Tagen beschäftige ich mich mit dieser durchaus attraktiven Alternative. Auch wenn es 'relativ simpel' ist, bedeutet das für mich doch weitgehend Neuland. Schau'n wir mal...
Mein aktuelles Problem hatte ich ja eigentlich schon gelöst bzw. umgangen. Mich interessierte eben, wieso einige Browser eine Seite, die angeblich nicht existiert, dennoch ausgeben können

Gruß LP
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.339 Beiträge
 
Delphi 12 Athens
 
#7

AW: Error 404 mit TIdHTTP

  Alt 28. Aug 2020, 11:27
Einige Browser zeigen bei einem HTTP-ErrorCode eine Fehlerseite an.
Andere Browser zeigen die Seite mit dem StatusCode nur an, wenn es keinen Kontent gibt.

Jetzt könnte man als WebEntwickler gemein sein (oder doof) und trotz ausgabe eines Contents dennoch als Status 404 zurück geben.

Es kann aber auch sein, dass die Webseite (HTTP Header/JavaScript/...) eine Erkennung für Browser hat und je nach Browser.Model/Version ein bissl was anderes macht.
Sowas kann sogar direkt im WebServer und nicht erst clientseitig sein, also Anhand der Browser-Kennung im Request-Header.


Außerdem wird der gesamte "Inhalt" der genannten Webseite via JavaScript nachgeladen.
Dein Download verarbeitet kein JavaScript, also bleibt da so oder so nur eine nutzlose HTML-Struktur übrig, selbst wenn du das 404-Problem behebst.

Einzige "richtige" Lösung wäre z.B. eine zugängliche REST-API des Seitenbetreibers.
Außerdem glaube ich kaum, dass der Seitenbetreiber das Runterladen, Parsen und Auslesen der Webseiten erlaubt.
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu (28. Aug 2020 um 11:33 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort

 

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:31 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz