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;

      }

  • 相关阅读:
    django之快速分页
    python django 使用 haystack:全文检索的框架
    django的admin或者应用中使用KindEditor富文本编辑器
    Ubuntu安装微信
    python 基本模块
    [LeetCode] 860. 柠檬水找零 lemonade-change(贪心算法)
    [LeetCode] 455. 分发饼干 assign-cookies(贪心算法)
    [LeetCode] 122. 买卖股票的最佳时机ii best-time-to-buy-and-sell-stock-ii(贪心算法)
    [LeetCode] 225. 用队列实现栈
    [LeetCode] 155. minStack 设计最小栈
  • 原文地址:https://www.cnblogs.com/cotty/p/2557457.html
Copyright © 2011-2022 走看看