获取Http请求IP的工具类】的更多相关文章

public class IpAddressUtil { public static String getIpAddr(HttpServletRequest request){ String ipAddress = request.getHeader("x-forwarded-for"); if(ipAddress == null || ipAddress.length() == 0 || "unknown".equalsIgnoreCase(ipAddress))…
public class IpAddressUtil { public static String getIpAddr(HttpServletRequest request){ String ipAddress = request.getHeader("x-forwarded-for"); if(ipAddress == null || ipAddress.length() == 0 || "unknown".equalsIgnoreCase(ipAddress))…
180709-Java实现获取本机Ip的工具类 获取本机Ip算是比较常见的一个需求场景了,比如业务报警,可能就会带上出问题的机器IP,方便直接上去看日志定位问题,那么问题来了,如何获取机器IP呢? I. IpUtil工具类 1. 基本方法 如何获取机器Ip?如果了解InetAddress这个工具类,就很容易写出一个简单的工具类,如下 public static String getLocalIP() { try { return InetAddress.getLocalHost().getHos…
在实际项目中,有调用微信支付完成支付功能,在微信支付的请求参数中需要传递一个本机的ip地址,java代码运行环境目前为windows10以及centos7. 以下为获取ip地址工具类: package com.dq.schooldomain.utils; import java.net.InetAddress; import java.net.NetworkInterface; import java.net.UnknownHostException; import java.util.Enum…
在我们开发的过程中,也许有下面的这样的需求,就是要记录一下每次访问服务器的ip,需要存到数据库,以便以后进行数据分析等... 下面给大家介绍一个通过当前请求得到访问者ip的工具类 IpUtil.java package com.mmall.util; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import javax.servlet.http.HttpServletRequest;…
Http请求通信(工具类) 异步消息处理流程是: 首先需要在主线程当中创建一个Handle对象,并重写handlerMessage()方法. 然后当子线程中需要进行UI操作时,就创建一个Message对象,并通过Handler将这条消息发送出去. 之后这条消息会被添加到MessageQueue的队列中等待被处理,而Loop则会一直尝试从MessageQueue中取出待处理消息,最后分发回HandlerMessage()方法中.     private Handler handler = new…
服务端获取客户端请求IP地址,常见的包括:x-forwarded-for.client-ip等请求头,以及remote_addr参数. 一.remote_addr.x-forwarded-for.client-ip remote_addr:指的是当前直接请求的客户端IP地址,它存在于tcp请求体中,是http协议传输的时候自动添加,不受请求头header的控制.因此,当客户端与服务器之间不存在任何代理的时候,通过remote_addr获取客户端IP地址是最准确,也是最安全的. x-forward…
在开发中,总是能碰到用注解注入不了Spring容器里面bean对象的问题.为了解决这个问题,我们需要一个工具类来直接获取Spring容器中的bean.因此就写了这个工具类,在此记录一下,方便后续查阅.废话不多说,直接上代码. 一.代码 package com.zxy.demo.spring; import org.springframework.beans.BeansException; import org.springframework.context.ApplicationContext;…
服务端如何获取客户端请求IP地址,网上代码一搜一大把.其中比较常见有x-forwarded-for.client-ip等请求头,及remote_addr参数,那么为什么会存在这么多获取方式,以及到底怎样获取才是安全的呢? 一.remote_addr.x-forwarded-for.client-ip是神马? remote_addr指的是当前直接请求的客户端IP地址,它存在于tcp请求体中,是http协议传输时自动添加的,不受请求头header所控制.所以,当客户端与服务器间不存在任何代理时,通过…
获取 Android APP 版本信息工具类 获取手机APP版本信息工具类 1.获取版本名称 2.获取版本号 3.获取App的名称 package com.mingyue.nanshuibeidiao.util; import android.content.Context; import android.content.pm.ApplicationInfo; import android.content.pm.PackageInfo; import android.content.pm.Pac…
之前写了一个获取ip地址的方法,但是放网上一查显示此Ip地址是局域网ip地址,要是想获取请求端的真实公网ip地址怎么样了,看了一些别人的博客后发现,想要获取客户端的公网ip必须借助第三方. package com.jzproject.common.util; import javax.servlet.http.HttpServletRequest; import org.slf4j.Logger;import org.slf4j.LoggerFactory; import java.io.Buf…
import java.io.BufferedReader; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.io.OutputStream; import java.net.HttpURLConnection; import java.net.URL; import…
有些场景我们不属于controller,service,dao,但是我们需要从spring中得到spring容器里面的bean.这时候我们需要一个类继承 ApplicationContextAware 实现这个类的set方法,set的参数就是spring的上下文,然后我们就可以 为所欲为了~~~ 话不多说,上代码. ApplicationContextHelper.java package com.mmall.common; import org.springframework.beans.Be…
枚举类为: public enum OrderStatusEnum implements CondeEnum{ NEW(0, "新订单"), FINISHED(1, "完结"), CANCLE(2, "取消"); private Integer code; private String msg; OrderStatusEnum(Integer code, String msg) { this.code = code; this.msg = msg…
package cn.zgjkw.battalion.util; import org.apache.log4j.Logger; import javax.servlet.http.HttpServletRequest;import java.io.IOException; /** * 常用获取客户端信息的工具 * */ public final class NetworkUtil { /** * Logger for this class */ private static Logger lo…
public class IpUtils { private static final String[] HEADERS = { "X-Forwarded-For", "Proxy-Client-IP", "WL-Proxy-Client-IP", "HTTP_X_FORWARDED_FOR", "HTTP_X_FORWARDED", "HTTP_X_CLUSTER_CLIENT_IP"…
ExternalIpAddressFetcher.java package com.tyust.common; import java.io.IOException; import java.io.InputStream; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.util.regex.Matcher; import java…
1:request.getRemoteAddr() 2:如果请求的客户端使用了nginx 等反向代理发送请求的时候:就不能获取到真是的ip地址了:如:将http://192.168.1.110:2046/ 的URL反向代理为http://www.xxx.com/ 的URL时,用request.getRemoteAddr() 方法获取的IP地址是:127.0.0.1 或 192.168.1.110 ,而并不是客户端的真实IP. 3:解决: public String getRemoteHost(j…
/// <summary> /// 此类用于获得设备的Ip和Mac /// </summary> public class Mac { [DllImport("Iphlpapi.dll")] private static extern int SendARP(Int32 dest, Int32 host, ref Int64 mac, ref Int32 length); [DllImport("Ws2_32.dll")] private s…
/// <summary> /// 获取客户端IP地址 /// </summary> /// <returns></returns> public static string GetHostAddress() { string userHostAddress = HttpContext.Current.Request.UserHostAddress; if (string.IsNullOrEmpty(userHostAddress)) { userHostA…
java实现http请求的方法常用有两种,一种则是通过java自带的标准类HttpURLConnection去实现,另一种是通过apache的httpclient去实现.本文用httpclient去实现,需要导入httpclient和httpcore两个jar包,测试时用的httpclient-4.5.1和httpcore-4.4.3. HttpMethod.java package demo; public enum HttpMethod { GET, POST; } HttpHeader.j…
package com.net.util;   import java.io.IOException; import java.io.UnsupportedEncodingException; import java.util.List; import org.apache.http.HttpResponse; import org.apache.http.HttpStatus; import org.apache.http.NameValuePair; import org.apache.ht…
装载自:http://www.open-open.com/lib/view/open1384844838743.html package com.wiker; import java.io.BufferedReader; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java…
/** * 获取当前时间 * * @return */ public String getTime() { Date date = new Date();// 创建一个时间对象,获取到当前的时间 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");// 设置时间显示格式 CurrentTime = sdf.format(date); return CurrentTime; }…
有时候我们会出现无法用注解 @Autowired 注入bean的情况,这个时候可以 通过contextLoader获取 WebApplicationContext ctx = ContextLoader.getCurrentWebApplicationContext(); BeanService beanService = (BeanService)ctx.getBean("beanID"); 这里的beanID为xml文件中对应的<bean id="beanID&qu…
最近的一个项目的某个功能获取用户的ip地址,添加用户的系统使用记录. 我发现当我直接使用getRemoteAddr()方法从HttpServletRequet中获取用户的ip时,获取到的是服务器的ip地址,为什么会这样呢? 网上找到的答案: “当我们通过request获取客户端IP时,自身服务器通常会为了保护信息或者负载均衡的目的,对自身服务器做反向代理.此时如果我们通过request.getRemoteAddr();可能获取到的是自身代理服务器的IP,而无法达到获取用户请求ip的目的.” 最终…
在没有网关或者反向代理软件情况下,java里获取客户端ip地址的方法是request.getRemoteAddr() 先解释下http协议和TCP协议: 网页默认是进行http连接了,http协议即超文本传送协议(Hypertext Transfer Protocol ),是工作TCP协议之上的协议 tcp连接需要三次握手,也就是调用底层的socket进行连接确认.而socket连接需要知道通信双方的ip地址和端口才可以进行数据的正确传输. 由上面可以知道request.getRemoteAdd…
实现步骤如下: (1)新建一个java web工程 (2)新建servers包,新建类GetRequestIp,用来处理获取请求IP,GetRequestIp类完整代码如下: package servers; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class GetRequestIp { public static void post(…
一些可以获取JVM信息的java工具类 BufferPoolMXBean.class ClassLoadingMXBean.class CompilationMXBean.class GarbageCollectorMXBean.class MemoryManagerMXBean.class MemoryMXBean.class MemoryPoolMXBean.class OperatingSystemMXBean.class PlatformLoggingMXBean.class Runti…
package com.hxqc.basic.dependency.util; import org.apache.commons.lang.StringUtils; import javax.servlet.http.HttpServletRequest; import java.io.IOException; /** * 获得IP地址工具类 * * @author huyj * @Created 2017-05-23 16:34 */ public class IPUtils { /** *…