在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中文網其他相關文章!