zoukankan      html  css  js  c++  java
  • Service获取客户端IP地址(java)

    Java代码
    <strong>1.基于jax-ws开发的webservice获取客户端ip的方法【在代理类XXXDelegate添加如下代码】:</strong>

      import javax.annotation.Resource;

      import javax.servlet.http.HttpServletRequest;

      import javax.xml.ws.WebServiceContext;

      import javax.xml.ws.handler.MessageContext;

      @Resource

      private WebServiceContext wsContext;

      private String getClientInfo(){

      MessageContext mc = wsContext.getMessageContext();

      HttpServletRequest request = (HttpServletRequest)(mc.get(MessageContext.SERVLET_REQUEST));

      String remortAddress = request.getRemoteAddr();

      return (remortAddress);

      }

    <strong>  2.基于axis发布的webservice获取客户端ip的方法</strong>

      /**

      * 获取客户端IP地址,如调用方的IP,以便检查权限。

      * 适用于axis发布的webservice

      * @return

      */

      public String getClientIpAxis() {

      MessageContext mc = null;

      HttpServletRequest request = null;

      try {

      mc = MessageContext.getCurrentMessageContext();

      if (mc == null)

      throw new Exception(“无法获取到MessageContext”);

      request = (HttpServletRequest) mc

      .getProperty(HTTPConstants.MC_HTTP_SERVLETREQUEST);

      System.out.println(“remote ip: ” + request.getRemoteAddr());

      } catch (Exception e) {

      System.out.println(e.getMessage());

      e.printStackTrace();

      }

      return request.getRemoteAddr();

      }

    <strong>  3.基于xfire发布的webservice获取客户端ip的方法</strong>

      /**

      * 获取客户端IP地址

      * 适用于xfire发布的webservice

      * @return

      */

      public String getClientIpXfire() {

      String ip = “”;

      try {

      HttpServletRequest request = XFireServletController.getRequest();

      ip = request.getRemoteAddr();

      } catch (Exception e) {

      System.out.println(“无法获取HttpServletRequest.”);

      e.printStackTrace();

      }

      return ip;

      }

  • 相关阅读:
    ES6 class -- Class 的基本语法
    ES6 Promise --回调与Promise的对比、信任问题、错误处理、Promise的状态、以及Promise对象的常用方法
    移动端调试,手机缓存清不掉
    JAR 介绍-百度百科
    一致性哈希的基本概念
    Java线程池的配置
    java多线程面试题整理及答案(2018年)
    Java多线程面试题整理
    IntelliJ Idea 常用快捷键
    RESTful规范
  • 原文地址:https://www.cnblogs.com/cotty/p/2557457.html
Copyright © 2011-2022 走看看