Curl Følg omdirigering

Curl Følg omdirigering
Curl er et kraftig kommandolinjeverktøy som letter dataoverføring over et bredt spekter av protokoller, inkludert HTTP/HTTPS, FTP, GOPHER og etc.

Enten å bygge og feilsøke enkle forespørsler eller komplekse API -er, er Curl et utmerket verktøy i ferdighetssettet ditt.

Denne opplæringen vil utforske konseptet med HTTP -viderekoblinger og hvordan vi kan bruke Curl til å følge dem på en forespørsel.

Hva er en HTTP -viderekobling?

En HTTP -viderekobling, ofte kjent som en omdirigering, refererer til en teknikk der en gitt adresse returnerer en viderekoblingsinstruksjon i stedet for å gi tilbake den forespurte ressursen eller dokumentet.

Det er i utgangspunktet hva navnet antyder. Når en klient ber om en spesifikk ressurs, i stedet for at serveren svarer med det spurte resultatet, ber den klienten se etter ressursen på et annet sted.

Bildet nedenfor viser et grunnleggende konsept for en HTTP -viderekobling.

Kilde: Mozilla Developer Network.

Følgende er en enkel HTTP -viderekoblingsoverskrift.

Http/1.1 301 flyttet permanent

Sted: https: // linuxhint.com

I eksemplet ovenfor forteller serveren oss at adressen http: // linuxhint.com har flyttet permanent til https: // linuxhint.com

Det er to hovedtyper av viderekoblinger:

  1. Permanente viderekoblinger
  2. Midlertidige omdirigeringer

Permanente viderekoblinger

Dette er omdirigeringene som varer og ikke er gyldige for den spesifikke forespørselen. En permanent viderekobling forteller klienten at den forespurte ressursen har flyttet til en ny adresse permanent. En permanent omdirigering er betegnet med HTTP -statuskode 301.

Midlertidige omdirigeringer

På den annen side forteller midlertidige omdirigeringer klienten at serveren ønsker å omdirigere til en ny ressurs. Imidlertid er denne viderekoblingen ikke permanent og bør ikke cache denne viderekoblingen. Dette betyr at viderekoblingen ikke vil være der på et senere tidspunkt.

Denne typen viderekoblinger er betegnet med HTTP -statusloven 302.

Nå har vi det grunnleggende om HTTP -viderekoblinger, la oss lære å fortelle Curl å følge et omdirigeringssvar.

Curl Følg omdirigering

Curl lar deg følge en viderekobling ved å bruke -L -flagget. Dette flagget er avledet fra stedsoverskriften i en viderekoblingsoperasjon.

Kommandosyntaks er som vist:

$ curl -l [url]

Et eksempel på en enkel krølledirekt er som vist:

Curl -l http: // linuxhint.com

Curl Set Max Redirects

Når du lar Curl følge viderekoblinger, kan den utføre opptil 50 viderekoblinger. Du kan imidlertid angi en tilpasset verdi for omdirigeringene ved hjelp av -Max -Redirs -parameteren.

Syntaksen er som vist:

$ Curl -l - -Max -Redirs [Number] [url]

For å sette et maksimalt 5 viderekoblinger, kan vi for eksempel kjøre:

$ Curl -l -MAX -Redirs 5 http: // Linuxhint.com

Curl Aktiver uendelige viderekoblinger

Det er uten tvil at Curl vil forsøke å beskytte deg mot å utføre uendelige viderekoblinger. Derfor, hvis du kommer med en forespørsel som returnerer mer enn 20 viderekoblinger, vil Curl automatisk avbryte forespørselen.

Du kan imidlertid overstyre dette alternativet ved å stille inn -Max -Redirs -parameteren til -1

Syntaksen er som vist:

$ Curl -l - -Max -Redirs -1 [url]

krøll forhindrer HTTP -metodekonvertering

Hvis du møter en omdirigering når du foretar en HTTP -postforespørsel, vil Curl konvertere forespørselen til en GET -forespørsel i stedet.

Du kan imidlertid forhindre at Curl konverterer et innlegg for å få når det møter en 301, 302 og 303 omdirigeringer ved bruk av -post [status_code] parameter.

Syntaksen er vist:

$ curl -l --post [status_code] [url]

For eksempel for å forhindre at Curl konverterer for å få når den møter en 301 omdirigering:

$ curl -l --post301 [url]

krøll autentisere omdirigering

Det kan hende du må oppgi autoritektivering når du kommer med en forespørsel. Imidlertid, hvis Curl møter en omdirigering, vil det forhindre å sende legitimasjon av sikkerhetsmessige årsaker.

Du kan overstyre dette ved å stille inn parameteren -Location -Trust.

Syntaksen er som vist:

$ Curl -l - - -lokocation -Trussed -Bruker "Bruker: Passord"

Konklusjon

Ved hjelp av denne opplæringen oppdaget vi hvordan vi skal utføre omdirigeringsoperasjoner ved hjelp av Curl. Vi dekket konsepter som å følge en enkel omdirigering, sette antall viderekoblinger, uendelige omdirigeringer og krøllautentisering i en viderekobling.