在Go语言中,可以使用net/http包中的Request结构体获取访问者的地址信息。具体方法如下:

func handler(w http.ResponseWriter, r *http.Request) {
    // 获取访问者的IP地址
    remoteAddr := r.RemoteAddr
    // 如果是代理服务器转发,则可能会有多个IP地址,需要取第一个
    if forwardedFor := r.Header.Get('X-Forwarded-For'); forwardedFor != '' {
        remoteAddr = strings.Split(forwardedFor, ',')[0]
    }
    fmt.Println('访问者地址:', remoteAddr)
}

在上面的代码中,通过r.RemoteAddr可以获取到原始的IP地址,如果有代理服务器转发,则需要从X-Forwarded-For请求头中获取第一个IP地址。

Go语言获取访问者IP地址:完整指南

原文地址: https://www.cveoy.top/t/topic/m6oq 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录