首頁 >後端開發 >Golang >Go中如何決定重定向後的最終URL?

Go中如何決定重定向後的最終URL?

Susan Sarandon
Susan Sarandon原創
2024-11-15 05:02:02259瀏覽

How to Determine the Final URL After Redirections in Go?

在Go 中重定向後檢索最終URL

在Go 的net/http 套件中,透過自動重定向處理,大量的URL 通常會導致特定的結果終端網址。在一系列重定向之後確定最終 URL 可能是一個挑戰。

不採用駭客解決方法的一個可能的解決方案是檢查 Response 物件的 Request 元件。 Request 物件對應於用戶端存取的最終 URL。

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)
}

此程式碼在可能的重定向後檢索最終 URL,並使用 Request.URL.String() 方法列印它。

輸出:

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

這種方法消除了複雜計算的需要,並提供了一種直接的方法來確定 Go 中重定向 URL 的最終目的地。

以上是Go中如何決定重定向後的最終URL?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn