Maison >développement back-end >Golang >Comment déterminer l'URL finale après les redirections dans Go ?

Comment déterminer l'URL finale après les redirections dans Go ?

Susan Sarandon
Susan Sarandonoriginal
2024-11-15 05:02:02256parcourir

How to Determine the Final URL After Redirections in Go?

Récupération de l'URL finale après les redirections dans Go

Dans le package net/http de Go, avec la gestion automatique des redirections, de nombreuses URL aboutissent souvent à un message spécifique URL du terminal. Déterminer l'URL finale après une séquence de redirections peut être un défi.

Une solution possible sans recourir à une solution de contournement hackeuse consiste à examiner le composant Request de l'objet Response. L'objet Request correspond à l'URL ultime accédée par le client.

package main

import (
    "fmt"
    "log"
    "net/http"
)

func main() {
    resp, err := http.Get("http://stackoverflow.com/q/16784419/727643")
    if err != nil {
        log.Fatalf("http.Get => %v", err.Error())
    }

    finalURL := resp.Request.URL.String()

    fmt.Printf("The URL you ended up at is: %v\n", finalURL)
}

Ce code récupère l'URL finale après d'éventuelles redirections et l'imprime à l'aide de la méthode Request.URL.String().

Sortie :

The URL you ended up at is: http://stackoverflow.com/questions/16784419/in-golang-how-to-determine-the-final-url-after-a-series-of-redirects

Cette approche élimine le besoin de calculs compliqués et fournit un moyen simple de déterminer la destination finale des URL de redirection dans Go.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn