生活随笔
收集整理的這篇文章主要介紹了
拿访问网站用户IP 纯JS实现
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
?后臺拿IP?
Java代碼
String ip = request.getHeader("X-Forwarded-For");if (ip == null || ip.length() == 0|| "unknown".equalsIgnoreCase(ip)) {ip = request.getHeader("Proxy-Client-IP");}if (ip == null || ip.length() == 0|| "unknown".equalsIgnoreCase(ip)) {ip = request.getHeader("WL-Proxy-Client-IP");}if (ip == null || ip.length() == 0|| "unknown".equalsIgnoreCase(ip)) {ip = request.getHeader("HTTP_CLIENT_IP");}if (ip == null || ip.length() == 0|| "unknown".equalsIgnoreCase(ip)) {ip = request.getHeader("HTTP_X_FORWARDED_FOR");}if (ip == null || ip.length() == 0|| "unknown".equalsIgnoreCase(ip)) {ip = request.getRemoteAddr();} String ip = request.getHeader("X-Forwarded-For");if (ip == null || ip.length() == 0|| "unknown".equalsIgnoreCase(ip)) {ip = request.getHeader("Proxy-Client-IP");}if (ip == null || ip.length() == 0|| "unknown".equalsIgnoreCase(ip)) {ip = request.getHeader("WL-Proxy-Client-IP");}if (ip == null || ip.length() == 0|| "unknown".equalsIgnoreCase(ip)) {ip = request.getHeader("HTTP_CLIENT_IP");}if (ip == null || ip.length() == 0|| "unknown".equalsIgnoreCase(ip)) {ip = request.getHeader("HTTP_X_FORWARDED_FOR");}if (ip == null || ip.length() == 0|| "unknown".equalsIgnoreCase(ip)) {ip = request.getRemoteAddr();}
但是由于公司有防火墻 每次都拿滴是防火墻的IP 192.168.92.2 所以根本沒有辦法統計實際IP 所以上述后臺拿IP地址的方法就不行
所以不能給公網地址 ,只能給內網地址(上不了外網) 這樣就可以識別內網IP(但是這樣外網用戶就訪問不了)
所以只能做一個判斷 發現是防火墻IP 就跳轉到內網訪問地址。
用JS直接拿IP原理 其實就是通過開發API 在訪問我們網站的時候 也訪問其它網站 然后拿到后臺查詢IP地址 然后我們做操作放到前臺
下面貼下JS直接拿IP代碼
Java代碼
<script src="http://pv.sohu.com"></script>document.write(returnCitySN.cip)
<script src="http://pv.sohu.com"></script>
document.write(returnCitySN.cip)
直接這樣就可以 注意要用sohu的公共API 地址在上一篇文章里面
大家有問題 可以留言
PS:126郵箱有代碼 ?
轉載于:https://blog.51cto.com/ajiao13/1138993
總結
以上是生活随笔為你收集整理的拿访问网站用户IP 纯JS实现的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。