Echo框架 获取IP地址

Go Echo框架提供了获取 IP地址 的函数:ExtractIPDirect 和 ExtractIPFromXFFHeader。

 

1. 没有代理的情况

获取客户IP地址如下:

e.GET("/codebaoku", func(c echo.Context) error {
    ip := echo.ExtractIPDirect()(c.Request())
})

 

2. 有代理的情况

HTTP 服务前面使用了负载均衡之类的代理,可以通过 X-Forwarded-For 头获取客户真实的用户 IP。

e.GET("/codebaoku", func(c echo.Context) error {
    // 获取IP地址
    ip := echo.ExtractIPFromXFFHeader()(c.Request())
})