Maison  >  Article  >  développement back-end  >  Comment récupérer les adresses IP des utilisateurs pour la vérification reCAPTCHA dans App Engine Golang ?

Comment récupérer les adresses IP des utilisateurs pour la vérification reCAPTCHA dans App Engine Golang ?

Susan Sarandon
Susan Sarandonoriginal
2024-11-02 11:33:30357parcourir

How to Retrieve User IP Addresses for reCAPTCHA Verification in App Engine Golang?

Comment récupérer les adresses IP des utilisateurs pour la vérification CAPTCHA dans App Engine Golang

Introduction :
Intégration de reCAPTCHA dans les applications Web est essentiel pour la protection contre le spam et la fraude. Pour vérifier les solutions CAPTCHA, l'obtention de l'adresse IP de l'utilisateur est cruciale. Cet article montre comment récupérer l'adresse IP des publications de formulaire dans Google App Engine (GAE) à l'aide de Golang.

Récupérer l'adresse IP de l'utilisateur :
Pour obtenir l'adresse IP de l'utilisateur à partir d'un formulaire post dans GAE Golang, suivez ces étapes :

  1. Importez le package "net": import "net"
  2. Utilisez r.RemoteAddr pour accéder à l'adresse réseau du client : ip, _, _ := net.SplitHostPort(r.RemoteAddr)

La fonction net.SplitHostPort analyse l'adresse réseau du client, en extrayant l'adresse IP (ip).

Exemple de code :

<code class="go">import "net"

func GetUserIP(r *http.Request) string {
    ip, _, _ := net.SplitHostPort(r.RemoteAddr)
    return ip
}</code>

Utilisation :

Une fois que vous avez récupéré l'adresse IP, vous pouvez l'utiliser pour vérifier les solutions reCAPTCHA comme suit :

<code class="go">challenge := r.FormValue("g-recaptcha-response")
ip := GetUserIP(r)
resp, err := http.Get("https://www.google.com/recaptcha/api/siteverify?secret=" + recaptchaSecret + "&response=" + challenge + "&remoteip=" + ip)
// Validate reCAPTCHA response using retrieved IP and challenge</code>

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn