-
webservice 身份认证问题5
现在只知道webservice 的url ,在浏览器上输入url,需要用户名,密码才能打开xml
用java做客户端,怎么才能实现身份认证呢?望大侠们指教下
另外服务端是.net做的,我用xfire,axis都试了,没解决
问题补充:morgan117 写道你的客户端是wsdl生成的,还是自己用HttpURLConnection做的?
用axis生成的
问题补充:morgan117 写道你可以通过调用生成的service的createDispatch方法,得到dispatch。
再调用dispatch的方法就行了。
dispatch.getRequestContext().put(Dispatch.USERNAME_PROPERTY, "role1");
dispatch.getRequestContext().put(Dispatch.PASSWORD_PROPERTY, "tomcat");
没有createDispatch的方法,我是从xml文件生成的,直接从url生成会报错,生成不了
问题补充:morgan117 写道你把客户端代码贴出来看看。没用过axis生成客户端过public static void main(String[] args) throws Exception, ServiceException { URL url = new URL("http://localhost/Incuity/ContentService.asmx"); ContentServiceSoapStub sisbs = new ContentServiceSoapStub(url, new ContentServiceLocator()); sisbs.setUsername("ssss"); sisbs.setPassword("ssss"); sisbs.exportContentPackage(new String[] { "", "" }, }
报http://xml.apache.org/axis/}HttpErrorCode:4012012年4月05日 10:41
4个答案 按时间排序 按投票排序
-
采纳的答案
你可以直接用HttpURLConnection来做客户端。
URL url = new URL("http://localhost/Incuity/ContentService.asmx"); HttpURLConnection conn = (HttpURLConnection)url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("content-type", "text/xml");\\根据具体情况定 conn.setDoOutput(true); String passId = new String(Base64.encode("username:password".getBytes())); conn.setRequestProperty("Authorization", "Basic "+passId); conn.connect(); OutputStream os = conn.getOutputStream();
通过这个outputStream来发请求
像这样String s = "<?xml version=\"1.0\" encoding=\"UTF-8\"?><soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:bin=\"http://hello1/\">" + " <soapenv:Body> <bin:sayHello><arg0>morgan</arg0><arg1>23</arg1></bin:sayHello> </soapenv:Body></soapenv:Envelope>"; os.write(s.getBytes());
2012年4月05日 17:39
-
你可以通过调用生成的service的createDispatch方法,得到dispatch。
再调用dispatch的方法就行了。
dispatch.getRequestContext().put(Dispatch.USERNAME_PROPERTY, "role1");
dispatch.getRequestContext().put(Dispatch.PASSWORD_PROPERTY, "tomcat");2012年4月05日 12:15
相关推荐
**WebService身份验证方法详解** 在IT领域,尤其是网络服务开发中,安全性是至关重要的一个环节。WebService作为一种标准的跨平台、跨语言的信息交换方式,其身份验证机制确保了只有合法的用户或应用程序才能访问...
为了确保对外提供的WebService接口不被未授权的第三方访问,一种常见的做法就是在这些接口上实施身份验证机制。其中,Basic验证是一种简单而有效的方式。本文将详细介绍如何为基于Axis2的WebService添加Basic验证,...
常见的身份验证方式有基本认证(Basic Authentication)、NTLM(NT LAN Manager)认证、Kerberos认证等。在C#中,可以使用HttpClient或WebClient类来设置请求头,添加相应的认证信息。 3. **基本认证**:这是最简单...
本示例使用C#构造SOAP信息,通过HttpWebRequest调用java编写的带有Windows身份验证的WebService,代码中详细注释了每行代码的功能与作用; 对应文章:http://blog.csdn.net/cgs_______/article/details/77894599
标题“WebService安全认证请求头信息”直指问题的核心,即在调用WebService时,如何通过请求头来传递必要的安全凭证,以验证客户端的身份。这通常涉及到身份验证、授权以及加密等安全机制。 首先,让我们了解...
XFire和JAX(Java API for XML)都是在Java环境中实现WebService的重要工具,它们分别提供了不同的方法来处理身份验证,确保数据安全传输。 XFire是早期的一个开源项目,它是一个快速、灵活的Web服务框架,支持SOAP...
6. **Readme.txt文件**:在这个例子中,Readme.txt文件提供了部署和运行示例的详细步骤,包括环境设置、代码解释以及可能遇到的问题和解决方案。遵循这个文件的指导,用户可以成功地运行和测试提供的示例。 7. **...
3. **处理SoapHeader**:在服务端,你需要在方法内部检查并验证SoapHeader中的认证信息。这通常涉及到与数据库或身份验证服务的交互,以验证用户名和密码的有效性。 ```csharp public class YourWebService : ...
其中配置了对传入请求的拦截器用以验证调用者身份 验证程序: WsServerAuthHandler. 这里只需要提供调用者应该使用的正确的口令. 是否和调用者实际传入的口令一致,由cxf完成. web.xml ------------------------- ...
当Axis客户端需要调用一个需要身份验证的CXF服务时,我们需要配置Axis客户端以正确地传递认证信息。以下是一些关键步骤: 1. **设置认证头**:对于基本或Digest认证, Axis客户端需要在HTTP请求中添加相应的...
- 集成Windows认证:通过配置IIS(Internet Information Services)以启用集成Windows认证,用户凭据由操作系统管理,提供了一种简单且安全的身份验证方法。 - Web.Config配置:在Web应用的配置文件中,可以设置`...
当我们谈论"WebService添加头部验证信息"时,通常是指在发送SOAP(Simple Object Access Protocol)消息时,通过添加特定的头部信息来增强安全性与认证机制。在这种情况下,标签“TokenSoapHeader”暗示我们可能在...
在Android开发中,为了实现应用程序与服务器之间的数据交互,经常使用WebService技术进行用户验证,例如登录功能。这里的示例将详细介绍如何在Android应用中通过WebService接口验证用户登录信息。主要涉及的技术点...
SSM(Spring、SpringMVC、MyBatis)是一个经典的Java web开发框架组合,深受开发者喜爱,尤其适合新手入门。本文将围绕“SSM Webservice...同时,参与社区交流和学习,能够获取更多实用经验和技巧,提高问题解决能力。
Spring提供了对WS-Security的支持,可以实现消息层的身份验证和加密,确保数据传输的安全。 综上所述,"WebService验证与Spring整合"涉及到的技术栈广泛,包括Spring框架的核心特性、Web服务的基础概念以及数据验证...
HTTP 基本认证是一种常用的身份验证机制,它可以保护 Web 服务的安全性。 在 ASP.NET 中调用基于 HTTP 基本认证的WebService 接口的方法可以分为三个步骤: 1. 使用 WSDL.EXE 工具生成代理类 首先,我们需要使用 ...
验证框架会检查消息的数字签名、加密和身份认证信息,以确保消息的安全传输。 "PCOP连库"可能提供了一种高效的方法来进行这些验证,尤其是在处理大量请求时,速度优势尤为明显。可能包含的jar包可能包含了与Web服务...
OpenID Connect则是在OAuth之上添加了身份验证层,用于身份验证。 **二、Web服务调用** 1. **SOAP调用**:使用SOAP消息格式,通过HTTP、HTTPS等传输协议进行通信。调用时,客户端需要构造SOAP请求消息,并发送到...
5. **错误处理**:当头验证失败时,应抛出适当的异常,如`SoapException`,以便客户端能够理解问题所在。可以自定义错误消息,提供更具体的错误信息。 6. **源代码和注释**:提供的压缩包中可能包含了实现以上步骤...