Bagaimanakah Saya Mengekstrak URL Akhir Selepas Ubah Hala dalam Go?

Mary-Kate Olsen
Lepaskan: 2024-11-12 12:57:02
asal
393 orang telah melayarinya

How Do I Extract the Final URL After Redirects in Go?

Mengekstrak URL Akhir dalam Go selepas Lencongan

Dalam pakej "net/http" Go, mendapatkan semula URL yang mengalami pelbagai ubah hala boleh menggunakan pengendalian ubah hala automatik. Walau bagaimanapun, penentuan URL destinasi akhir boleh terbukti mencabar tanpa melaksanakan penyelesaian yang meretas.

Penyelesaian: Memanfaatkan Objek Tindak Balas

Mujurlah, penyelesaian yang lebih elegan wujud. Objek "Respons" yang dikembalikan oleh "http.Get" (atau fungsi kaedah HTTP lain) mengandungi medan "Permintaan" yang mewakili percubaan akses terakhir. Ini boleh digunakan untuk mengekstrak URL akhir.

package main

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

func main() {
    // Initiate a GET request for a URL subject to redirects
    resp, err := http.Get("https://google.com") // Replace with the target URL
    if err != nil {
        log.Fatalf("http.Get -> %v", err)
    }

    // Retrieve the final URL using the last attempted Request in the Response
    finalURL := resp.Request.URL.String()

    // Output the resolved final URL
    fmt.Printf("The URL you ended up at is: %s", finalURL)
}
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimanakah Saya Mengekstrak URL Akhir Selepas Ubah Hala dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan