iteye_2178 2012-04-05 10:41
浏览 419
已采纳

webservice 身份认证问题

现在只知道webservice 的url ,在浏览器上输入url,需要用户名,密码才能打开xml
用java做客户端,怎么才能实现身份认证呢?望大侠们指教下

另外服务端是.net做的,我用xfire,axis都试了,没解决

  • 写回答

4条回答 默认 最新

  • morgan117 2012-04-05 17:39
    关注

    你可以直接用HttpURLConnection来做客户端。
    [code="java"]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();
    [/code]
    通过这个outputStream来发请求
    像这样
    [code="java"]
    String s = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"
    + " soapenv:Body bin:sayHellomorgan23/bin:sayHello /soapenv:Body/soapenv:Envelope";
    os.write(s.getBytes());
    [/code]

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料