国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

使用Java獲取發(fā)送請求的電腦的IP地址

這篇具有很好參考價值的文章主要介紹了使用Java獲取發(fā)送請求的電腦的IP地址。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

介紹

客戶端所有的請求信息都可以通過HttpServletRequest獲得,獲取客戶端ip可以通過getRemoteAddr()獲取。

但是如果客戶端是通過代理訪問我們的服務(wù)器,那么getRemoteAddr()獲取到的ip就很有可能不是真實的ip,這時候我們可以通過請求頭里的x-forwarded-for來獲取真實的ip,請求每經(jīng)一次代理,都會在后面拼接該代理的ip,以逗號分隔。文章來源地址http://www.zghlxwxcb.cn/news/detail-569814.html

方法一:此方法獲取真實IP(本機(jī)IP并不是127.0.0.1)

獲取發(fā)送請求的電腦的IP地址,并返回

package com.lc.z.common.utils;

import org.springframework.web.context.request.RequestAttributes;
import org.springframework.web.context.request.RequestContextHolder;

import javax.servlet.http.HttpServletRequest;

public class IpUtil {

    /**
     * 獲取請求的ip
     */
    public static String getRequestIp() {

        RequestAttributes requestAttributes = RequestContextHolder.getRequestAttributes();

        // 從獲取RequestAttributes中獲取HttpServletRequest的信息
        HttpServletRequest request = (HttpServletRequest) requestAttributes.resolveReference(RequestAttributes.REFERENCE_REQUEST);

        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();
        }

        return ip;
    }
}

方法二:

RequestAttributes requestAttributes = RequestContextHolder.getRequestAttributes();
HttpServletRequest request = ((ServletRequestAttributes) requestAttributes).getRequest();
String clientIP = ServletUtil.getClientIP(request);
// 本地的服務(wù)輸出 IP:127.0.0.1
System.out.println("IP:"+ clientIP);

到了這里,關(guān)于使用Java獲取發(fā)送請求的電腦的IP地址的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • Java中使用HttpRequest獲取用戶真實IP地址端口

    獲取請求來源ip代碼: 獲取請求來源端口代碼:

    2024年02月11日
    瀏覽(22)
  • Java獲取IP地址

    在Java編程中,我們經(jīng)常需要獲取本地或遠(yuǎn)程計算機(jī)的IP地址。IP地址是用于唯一標(biāo)識計算機(jī)的一組數(shù)字,它在網(wǎng)絡(luò)通信中起到重要的作用。下面將介紹幾種在Java中獲取IP地址的方法,并提供相應(yīng)的源代碼。 獲取本地IP地址 要獲取本地計算機(jī)的IP地址,我們可以使用Java的 InetA

    2024年01月25日
    瀏覽(20)
  • Java-通過IP獲取真實地址

    Java-通過IP獲取真實地址

    最近寫了一個日志系統(tǒng),需要通過訪問的 IP 地址來獲取真實的地址,并且存到數(shù)據(jù)庫中,我也是在網(wǎng)上看了一些文章,遂即整理了一下供大家參考。 這個是獲取正確 IP 地址的方法,可以直接使用的。 通過以上方法你可以獲取到訪問者的 IP 地址,只有獲取到了 IP 地址,才能

    2024年02月15日
    瀏覽(27)
  • java獲取ip地址以及ip歸屬地工具類

    java獲取ip地址以及ip歸屬地工具類

    需要ip2region.db文件,可以前往github下載 歡迎訪問我的博客網(wǎng)站: www.yqiu.top

    2024年02月22日
    瀏覽(19)
  • JAVA獲取客戶端IP地址

    2024年02月16日
    瀏覽(25)
  • java實現(xiàn)通過IP地址獲取mac(物理地址)

    java實現(xiàn)通過IP地址獲取mac(物理地址)

    java實現(xiàn)通過IP地址獲取mac(物理地址),只能獲取到局域網(wǎng)的mac地址,具體代碼如下:

    2024年02月16日
    瀏覽(20)
  • java獲取請求ip的方法

    java獲取請求ip的方法

    ? 在上篇文章中我們介紹了 java獲取請求 ip的方法,那么這篇文章我們就來詳細(xì)講解下獲取請求 ip的方法。獲取請求 ip的方法是基于 HTTP協(xié)議的,其原理如下: 1、用 web應(yīng)用程序,將 web服務(wù)器端與客戶端通過 HTTP協(xié)議通信。 2、客戶端發(fā)送請求信息,由服務(wù)器端處理。 3、服務(wù)

    2024年02月05日
    瀏覽(16)
  • Java根據(jù)IP地址獲取對應(yīng)歸屬地

    Java根據(jù)IP地址獲取對應(yīng)歸屬地

    最近,各大平臺都新增了評論區(qū)顯示發(fā)言者ip歸屬地的功能,例如嗶哩嗶哩,微博,知乎等等,下面,就來講講,Java 中是如何獲取 IP 屬地的 在Java中有多種獲取IP地址的方式,就不一一介紹了,給出了一個最常用的IP地址獲取方式,僅供參考,代碼如下: 對這里出現(xiàn)的幾個名詞解釋

    2023年04月24日
    瀏覽(22)
  • java服務(wù)器獲取ip 解讀請求頭 偽造ip

    目錄 一、獲取ip的代碼 二、請求頭解讀 三、注意事項 市面上流傳的JAVA/PHP服務(wù)器端獲取客戶端IP都是這樣: X-Forwarded-For 這是一個 Squid 開發(fā)的字段,只有在通過了 HTTP 代理或者負(fù)載均衡服務(wù)器時才會添加該項。格式為X-Forwarded-For: client1, proxy1, proxy2,一般情況下,第一個ip為客

    2024年02月08日
    瀏覽(23)
  • Java WebSocket 獲取客戶端 IP 地址

    在開發(fā) Web 應(yīng)用程序時,我們通常需要獲取客戶端的 IP 地址用于日志記錄、身份驗證、限制訪問等操作。當(dāng)使用 WebSocket 協(xié)議時,我們可以使用 Java WebSocket API 來獲取客戶端的 IP 地址。 本文將介紹如何使用 Java WebSocket API 獲取客戶端 IP 地址,以及如何在常見的 WebSocket 框架中

    2024年02月05日
    瀏覽(27)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包