`
xiaofengtoo
  • 浏览: 492801 次
  • 性别: Icon_minigender_1
  • 来自: xiamen
社区版块
存档分类
最新评论

Java开发WebService获取客户端IP地址

阅读更多

来自:jiaguwen123   记录下,以后备用

Java开发的WebService获取客户端IP地址

 

 

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

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

  } 

 

 

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

 

/**

  * 获取客户端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();

  } 

 

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

 

 /**

  * 获取客户端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;

  }
 

4:场景: 客户端--->bs服务器--->ws服务器 (未验证

GetSOAPWebModule.Request.RemoteAddr;  
// 通过代理,获取真实的ip
if(Context.Request.ServerVariables["HTTP_VIA"]!=null)
{ 
ip=Context.Request.ServerVariables["HTTP_X_FORWARDED_FOR"].ToString(); 
}
else
{ 
ip=Context.Request.ServerVariables["REMOTE_ADDR"].ToString(); 
}
// 或客户端获取再通过方法传递给服务器
 

 

 

 

分享到:
评论

相关推荐

    joeylv#joscrapy#【知识积累】服务器端获取客户端的IP地址(当客户端调用由Axis开发的WebService)1

    一、前言由于项目中一个小的模块需要获取客户端的IP地址以保证安全调用webservice接口,项目中客户端使用C#编写,服务器端使用Java编写,服务器端与客户

    java webservice服务器端获取request对象的三种方式

    #### 获取客户端IP地址的方法 无论采用哪种方式获取`HttpServletRequest`对象,我们都可以利用它来获取客户端的IP地址。下面是一个简单的示例方法,用于从`HttpServletRequest`对象中提取客户端IP地址: ```java ...

    JAVA调用Webservice接口Demo

    这个示例可能使用了某个这样的API,将接收到的IP地址转换为对应的城市信息。 7. **省份查询城市**:这个功能可能涉及到省级行政区划的数据处理,可能需要一个省份到城市映射的数据库或者API。这可能需要从外部源...

    WebService

    本教材将详细介绍如何使用CXF实现WebService,并重点讲解在不同的Web服务框架中获取客户端IP地址的方法。 #### 二、WebService基础概念 1. **SOAP (Simple Object Access Protocol)**:一种轻量级协议,用于在Web...

    腾讯地图WebService地址解析接口

    腾讯地图WebService地址解析接口是一种基于Web服务的技术,用于将地理坐标(经纬度)转换为具体的行政区域地址。这种接口在处理地理位置数据时非常有用,尤其是在分析用户行为、位置跟踪或提供定位服务的场景中。...

    webservices查询IP地址

    在本案例中,"webservices查询IP地址"指的是使用Web服务来获取客户端的IP信息,或者输入特定IP地址以查询其相关详情。这在分布式系统、网络监控、数据分析等领域非常常见,因为它能帮助我们识别和跟踪网络活动。 IP...

    BOS开发WebService

    ### BOS 开发 WebService 实践指南 #### 一、简介 在企业级应用开发中,Web Service 技术作为一种重要的远程服务调用方式被广泛采用。金蝶BOS(Business Operation System)作为一款功能强大的业务操作系统,支持...

    CXF webservice 动态地址客户端相关代码和jar包

    以下是对CXF Webservice动态地址客户端相关知识点的详细解释: 1. **CXF客户端API**:CXF提供了两种主要的客户端API,即JAX-WS(Java API for XML Web Services)和JAX-RS(Java API for RESTful Web Services)。...

    WebService开源程序---天气预报查询---IP查询(最新)

    【WebService开源程序---天气预报查询---IP查询(最新)】是一个基于Java技术的开源项目,主要功能是通过Web服务接口实现天气预报和IP地址查询。这个项目使用了Eclipse作为集成开发环境,并部署在Tomcat服务器上运行。...

    移动代理服务器WebService接口协议.pdf

    这里的IP地址应替换为实际部署MAS服务器的IP地址。 **2. 接口方法** #### (1) sendSM 方法 **功能**:用于发送一条MT短信至单个或多个手机号码。 **参数**: - **apicode**:接口编码,必填项。 - **loginName*...

    webservice参考

    `:获取客户端IP地址。 - `int destport = client.getPort();`:获取客户端端口号。 - `String inline = instream.readLine();`:读取客户端发送的数据。 - **功能说明**: - 每当有新的客户端连接时,都会创建...

    webservice

    - **客户端**则创建一个`Socket`对象,并通过该对象连接到服务端指定的IP地址和端口号。 - 客户端和服务端可以通过`InputStream`和`OutputStream`来进行数据的读写操作。 ##### 代码示例 下面给出的是服务端和...

    17.3、自己之前的webservice1

    5. **生成客户端代码**: 使用命令行工具(如WSDL2Java)生成客户端代码,这里使用的是Apache CXF的命令`wsimport`,并指定了源目录、包名和WSDL地址。 6. **调用Web Service**: 客户端代码中,通过`...

    android中调用webservice总结

    实际应用中应该将该值设置为你自己的服务器IP地址或其他标识,如 `http://172.16.230.50/`。 - 这个命名空间将在客户端的SOAP请求中出现,并且在生成的代理类中作为基础。 3. **服务方法**: - 使用 `[WebMethod]...

    java SOAPHEADER的web service

    如果Web服务端和客户端在不同的域或IP地址上,可能还会涉及到跨域安全和权限认证的问题。此外,在实际部署时还需要考虑网络环境、性能优化和安全加固等因素。 以上知识点总结了在Java中处理SOAPHEADER的Web服务请求...

    C++调用Java web service帮助文档.doc

    - **Destination**:指定目标Web Service的IP地址和端口号。 2. **监控SOAP请求**: - 通过配置好的本地端口发送SOAP请求。 - 可以实时查看SOAP请求和响应的具体内容,便于调试和问题排查。 #### 五、具体步骤 1...

    biee二次开发(WebService).doc

    - 如果BIEE服务器与Java应用不在同一台机器上,需要处理网络连接问题,如IP地址替换。 2. **调用代码说明** - **登录验证**: - 在进行任何操作前,必须先通过SAWSessionServiceSoapProxy代理类的logonex方法...

    Axis的安全访问机制

    下面是一个具体的例子,展示如何使用Handler来进行客户端IP地址的验证。 ```java package com.webservice; import java.io.IOException; import java.io.InputStream; import java.util.Properties; import java....

Global site tag (gtag.js) - Google Analytics