ホームページ  >  記事  >  バックエンド開発  >  Google App Engine Go で ReCAPTCHA 検証のためにユーザーの IP アドレスを取得する方法

Google App Engine Go で ReCAPTCHA 検証のためにユーザーの IP アドレスを取得する方法

Susan Sarandon
Susan Sarandonオリジナル
2024-11-02 13:33:30850ブラウズ

How to Retrieve a User's IP Address for ReCAPTCHA Verification in Google App Engine Go?

Google App Engine Go でユーザー IP アドレスを取得して ReCAPTCHA 検証を行う

reCAPTCHA を GAE Go Web アプリケーションに統合するには、ユーザーの IP アドレスを取得する必要があります検証目的のため。この記事では、ReCAPTCHA の統合を容易にするために、フォーム投稿からユーザーの IP アドレスを取得する方法について説明します。

ユーザーの IP アドレスを取得する鍵は、net.SplitHostPort 関数を使用することにあります。この関数は r.RemoteAddr 変数を受け取り、受信リクエストのリモート アドレスを取得し、それをホスト コンポーネントとポート コンポーネントに分割します。結果の IP アドレスは ip 変数に保存されます。

これを Go コードに実装する方法の例を次に示します。

<code class="go">package main

import (
    "log"
    "net"
    "os"

    "github.com/go-martini/martini"
)

func main() {
    m := martini.Classic()

    m.Post("/verify", func(w http.ResponseWriter, r *http.Request) {
        ip, _, _ := net.SplitHostPort(r.RemoteAddr)
        log.Printf("User IP address: %s", ip)
    })

    port := os.Getenv("PORT")
    if port == "" {
        port = "8080"
        log.Printf("Defaulting to port %s", port)
    }

    m.RunOnAddr(":" + port)
}</code>

このアプローチを実装すると、ユーザーの IP アドレスを効果的に取得できます。 IP アドレスを取得し、GAE Go Web アプリケーションでの ReCAPTCHA 検証にそれを利用します。

以上がGoogle App Engine Go で ReCAPTCHA 検証のためにユーザーの IP アドレスを取得する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。