首頁  >  文章  >  後端開發  >  如何在 Google App Engine Go 中檢索使用者的 IP 位址以進行 ReCAPTCHA 驗證?

如何在 Google App Engine Go 中檢索使用者的 IP 位址以進行 ReCAPTCHA 驗證?

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 位址出於驗證目的。本文探討如何從表單貼文中擷取使用者的 IP 位址,以便於 ReCAPTCHA 整合。

取得使用者 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 中檢索使用者的 IP 位址以進行 ReCAPTCHA 驗證?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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