ホームページ > バックエンド開発 > Golang > Go でリダイレクト後に最終 URL を抽出するにはどうすればよいですか?

Go でリダイレクト後に最終 URL を抽出するにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2024-11-12 12:57:02
オリジナル
476 人が閲覧しました

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

リダイレクト後の Go での最終 URL の抽出

Go の "net/http" パッケージでは、複数のリダイレクトを受ける URL を取得して、自動リダイレクト処理。ただし、ハック的な回避策を実装しないと、最終的な宛先 URL を決定するのは困難になる可能性があります。

解決策: 応答オブジェクトを利用する

幸いなことに、より洗練されたソリューションが存在します。 「http.Get」(または他の HTTP メソッド関数)によって返される「Response」オブジェクトには、最後に試行されたアクセスを表す「Request」フィールドが含まれています。これは、最終 URL を抽出するために利用できます。

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)
}
ログイン後にコピー

以上がGo でリダイレクト後に最終 URL を抽出するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート