请问前端获取不了ip地址?但是有些网站却可以获取到呢?

如题:
他们的前端为什么可以获取到我们的ip呢?
比如:
image.png

阅读 3.7k
4 个回答

靠后端获取再返回给前端的。


据说 webRTC 可以获取,但是没研究过要不要 STUN 服务器支持,如果要的话,那就不是纯前端的方案,且比普通的后端方案更麻烦。

这不是前端获取是. 是服务器获取到的ip.

后端获取ip传给前端的

数据采集中有filebeat、logstash工具可以采集apache服务的日志并进行处理,

input {
  beats {
     port=>5045
  }
}
filter {
   grok {
     match => {"message" => "%{HTTPD_COMMONLOG}"}
   }
}

output {
  csv {
    path => "/home/output/httpd-outfile.csv"
    fields => ["clientip","verb","bytes"]
    csv_options => {"col_sep"=>"   "}
  }
  stdout{
      codec => rubydebug
  }
}

以上代码就是logstash采集ip,请求方式,载荷大小的配置。
获取到这些信息再有对应的脚本或者方法传给前端

前端是不能获取,但后端可以获取,然后通过session之类的和后端交互,从而可以在前端显示。
而且这个获取的IP也不一定是真正的前端主机所在的IP,只是前端主机到服务器后端间的一个公开IP,如果前端主机是C类地址,nat等访问,这里获取的IP相当于路由器公网IP。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题