ClientIP

获取客户端真实IP,其获取方式与RealIP类似,但在获取到IP时,先判断是否公网IP,如果非公网IP,则继续获取下一符合条件的IP。

Example

  1. package main
  2. import (
  3. "log"
  4. "github.com/vicanso/elton"
  5. "github.com/vicanso/elton/middleware"
  6. )
  7. func main() {
  8. e := elton.New()
  9. e.Use(middleware.NewDefaultResponder())
  10. e.GET("/", func(c *elton.Context) (err error) {
  11. log.Println(c.ClientIP())
  12. c.Body = "Hello, World!"
  13. return
  14. })
  15. err := e.ListenAndServe(":3000")
  16. if err != nil {
  17. panic(err)
  18. }
  19. }