`
jasonking412
  • 浏览: 11521 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
文章分类
社区版块
存档分类
最新评论

服务器端获取webservice客户端IP地址

 
阅读更多

将下面这些方法放到服务器端就可以

一、基于xfire发布的webservice获取客户端ip的方法

public String getClientIp(){
String ip = "";
try {
HttpServletRequest request = XFireServletController.getRequest();
ip = request.getRemoteAddr();
System.out.println("客户端ip=:"+ip);
} catch (Exception e) {
System.out.println("无法获取HttpServletRequest.");
e.printStackTrace();
}
return ip;
}



二、基于axis发布的webservice获取客户端ip的方法

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

  }


三、基于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);

  }

分享到:
评论

相关推荐

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

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

    获取服务端硬件信息和客户端IP,MAC,浏览器信息

    客户端IP地址是网络中设备的唯一标识,通常通过网络请求头中的`REMOTE_ADDR`字段获取。在某些情况下,如果客户端经过了代理,可能需要检查`X-Forwarded-For`字段,因为这是代理服务器通常会设置的IP地址。 MAC地址...

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

    这种方法可以有效地应对多种网络环境下的IP地址获取需求。 总结来说,通过上述介绍的三种方式,我们可以灵活地在Java WebService环境中获取客户端请求的相关信息,从而更好地实现业务逻辑的处理。

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

    此协议基于TCP短连接模式,MAS作为服务器端监听在特定端口上(默认7301),而客户端(client)则通过调用WebService接口来发起数据传输请求。 #### 二、API原理与功能概述 **1. API原理** MAS产品的WebService ...

    java axis的webservice实例

    java基于axis的webservice实例,包含服务器端和客户端,开发工具为eclipse,下载后将TestServiceLocator类的地址改成你服务器端所在的机器ip地址,然后部署到tomcat中部署既可以运行。有问题可以留言

    通过webservice与android实现通信(C#与android)

    WebService使用HTTP协议,通过XML格式的数据进行通信,使得客户端能够调用服务器端的方法并接收返回结果。在本文中,我们关注的是如何使用C#在Windows环境下搭建WebService服务端,并使Android客户端能够与其进行...

    C++_WebService_Demon

    `C++_WebService_Demon`项目就是将这两种技术结合,使用C++实现了一个基于gSOAP库的Web服务示例,包括服务器端和客户端的代码。 gSOAP是用于C和C++的开源工具包,它允许开发者创建符合SOAP(简单对象访问协议)标准...

    webservice和socket简单例子

    在本例中,"WebService_Service"可能是实现了一个WebService服务器端,提供了对外的服务接口,而"Webservice_Client"则是对应的客户端,用于调用这些服务。客户端通过解析WSDL文件来了解服务的接口,然后使用SOAP...

    以webservice为后台通过局域网实现微信聊天功能

    开发者可能利用了Socket编程,创建了服务器端和客户端的连接,实现数据的双向传输。 接着,微信聊天功能的实现涉及到对微信API的模拟。虽然实际的微信API并不对外开放,但开发者可以通过研究微信的通讯协议,模仿其...

    PHP Webservice的发布与调用 中文WORD版

    同时,限制访问权限,只允许特定IP地址或经过验证的客户端调用服务。 2. **缓存与性能** - 对于频繁请求但数据不常变的Web服务,可以考虑使用缓存机制,如Memcached或Redis,提高响应速度。 3. **错误处理与日志...

    WebRTCServer_webservice_

    WebRTCServer_webservice_ 是一个专门针对WebRTC技术的服务器端解决方案,旨在帮助开发者,尤其是新手,学习和实践网络编程,特别是与流媒体传输相关的服务。WebRTC(Web Real-Time Communication)是一种允许网页...

    LabVIEW Web Server 设计

    - 在侦听器的IP地址选项中,可以选择“PC机当前IP”或“侦听所有网络地址”。 2. **Web发布**: - 使用“工具”->“Web发布工具”进行发布配置。 - 选择要发布的VI,并在查看方式中选择内嵌式,可选中“连接建立...

    WINCE连接WEBSERVICE第一次很慢的解决办法

    8. **服务器端优化**:除了客户端,服务器端的优化也很重要。确保服务器有足够的处理能力,优化Web服务的响应速度,例如,启用HTTP压缩,使用负载均衡技术,以及数据库查询的优化。 通过以上这些方法,可以显著改善...

    四种方式调用webservice.doc

    在服务器端,开发者通常需要编写符合Web Service协议的代码,例如使用Java的JAX-WS或C#的.NET Framework。这段代码定义了服务接口和实现,通过HTTP或HTTPS暴露服务,并生成WSDL(Web Service Description Language)...

    远程调用技术代码追踪(socket) 之二

    代理DLL是客户端使用的,它模拟了服务器端对象的行为,使得客户端可以直接调用仿佛对象就在本地一样。存根DLL则在服务器端运行,接收来自客户端的调用请求并将其转化为对实际服务器对象的调用。这种机制使得跨进程、...

    远程调用技术代码追踪之(RemObjects)[定义].pdf

    在描述中提到,通过分析WebService的源码,我们可以了解如何将请求转化为SOAP消息,然后在服务器端解码并执行相应的方法,最后将结果转换回SOAP消息返回给客户端。 3. **三层架构**:在三层架构中,远程调用涉及...

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

    - **Java Web Service**:基于Java的服务器端服务,提供SOAP接口供外部系统调用。 - **MS SOAP Toolkit 3.0**:微软提供的用于C++客户端开发的工具包,支持SOAP消息的构造和解析。 #### 三、准备工作 1. **安装MS ...

Global site tag (gtag.js) - Google Analytics