easy:SetOpt_FollowLocation(enable)
libcurl wird eine weitere Anfrage für die neue URL stellen und dem neuen
Location: Header folgen: Den ganzen Weg, bis keine solchen Header
mehr zurückgegeben werden. #CURLOPT_MAXREDIRS
kann verwendet
werden, um die Anzahl der Umleitungen zu begrenzen, die libcurl folgen wird.
libcurl begrenzt die Protokolle, denen es automatisch folgt. Die akzeptierten
Protokolle werden mit #CURLOPT_REDIR_PROTOCOLS
gesetzt. Standardmäßig
erlaubt libcurl alle Umleitungsprotokolle, außer denen, die aus
Sicherheitsgründen deaktiviert sind: Seit 7.19.4 sind FILE und SCP
deaktiviert, seit 7.40.0 sind auch SMB und SMBS deaktiviert.
Wenn Sie einem Location: Header folgen, bestimmt der 3xx-Antwortcode, der ihn
umgeleitet hat, auch, welche Anforderungsmethode er in der nachfolgenden
Anforderung verwenden wird: Für 301, 302 und 303 Antworten wechselt libcurl
die Methode auf GET, es sei denn, #CURLOPT_POSTREDIR
weist libcurl anders
an. Alle anderen 3xx-Codes lassen libcurl die gleiche Methode wieder senden.
Für Benutzer, die der Meinung sind, dass die bestehende Standortverfolgung zu naiv
oder zu einfach ist oder einfach nur Funktionen fehlen, ist es sehr einfach, stattdessen
Ihre eigene Umleitungs-Verfolgungslogik mit der Verwendung der #CURLINFO_REDIRECT_URL-Option
vom Befehl easy:GetInfo() zu implementieren, anstatt #CURLOPT_FOLLOWLOCATION
zu verwenden.