webService 使用 httpClient httpCore 学习
一种基于http协议使用WebService方法 首先我们先下载一个叫SoapUI的软件 (直接百度) 安装这个就不用多说。 使用: ? 1.创建一个SOAP project ?? ? 填入WSDL ? 然后会解析出来一些数据。找到我们想要对接的接口 比如我对接的方法是 双击打开是: <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tem="http://tempuri.org/"> ? ?<soapenv:Header/> ? ?<soapenv:Body> ? ? ? <tem:update_Lianbi_info> ? ? ? ? ?<!--Optional:--> ? ? ? ? ?<tem:USERID>?</tem:USERID> ? ? ? ? ?<!--Optional:--> ? ? ? ? ?<tem:SN>?</tem:SN> ? ? ? ? ?<!--Optional:--> ? ? ? ? ?<tem:OLD_LBSN>?</tem:OLD_LBSN> ? ? ? ? ?<!--Optional:--> ? ? ? ? ?<tem:NEW_LBSN>?</tem:NEW_LBSN> ? ? ? </tem:update_Lianbi_info> ? ?</soapenv:Body> 以及? </soapenv:Envelope> 这个就是我们即将需要的。 Java代码 public void SendLianbiWebService()throws ParseException,IOException { HttpClient client = HttpClients.createDefault(); String reqSoapData = buildReqSoapData(liBiEntity);//此处就是拼接SOAP请求 HttpPost post = new HttpPost(WSDLURL);//?WSDLURL 就是提供的WSDL try { HttpEntity re = new StringEntity(reqSoapData,"UTF-8"); post.setHeader("Content-Type","text/xml;charset=UTF-8"); post.setHeader("Accept-Encoding","gzip,deflate"); post.setHeader("SOAPAction","http://tempuri.org/IWarehouse_Business/update_change_Lianbi_info"); post.setEntity(re); response = client.execute(post);//发送请求 returnInfo = EntityUtils.toString(response.getEntity()); log.info("请求服务返回XML文本:" + returnInfo); } catch (UnsupportedEncodingException e) { log.error(e.getStackTrace()); } catch (ClientProtocolException e) { log.error(e.getStackTrace()); } catch (IOException e) { log.error(e.getStackTrace()); }? } 下面介绍 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |