美文网首页
webservice

webservice

作者: MrP_f220 | 来源:发表于2020-03-12 18:49 被阅读0次

    webservice接口 跟 webapi 区别:

    webservice  做为服务端无法监控接口 ;

    webservice接口的实现:

    1. 使用Service;

    首先准备好json格式的数据,其次必要代码如下

    Service service = new Service();

    Call call = (Call) service.createCall();

    call.setTargetEndpointAddress(new java.net.URL(url));     //url为接收地址及端口

    call.setOperationName("sendERPTodo");    //wsdl中接收数据的方法 

    call.addParameter("arg0",org.apache.axis.encoding.XMLType.XSD_STRING,javax.xml.rpc.ParameterMode.IN); //必要参数,具体百度哈哈 只管教你实现代码 这也是大多数人需要的

    call.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING);   //注意格式

    call.setUseSOAPAction(true);

    String result = (String) call.invoke(new Object[] {data.toString() });   // 此处为执行,注意异常处理

    2.  jdk原生 

    URL url = new URL("http://192.168.0.101:8089/myservice?wsdl");

    // 指定命名空间和服务名称

    QName qName = new QName("http://com.soft.ws/my", "MyService");

    Service service = Service.create(url, qName);

    // 通过getPort方法返回指定接口

    MyService myServer = service.getPort(new QName("http://com.soft.ws/my",

    "LoginPort"), MyService.class);

    // 调用方法 获取返回值

    String result = myServer.authorization("admin", "123456");

    3.httpClient

    HttpClient httpClient =new HttpClient();

        PostMethod post = new PostMethod(url); // 这里是post方式

    post.addRequestHeader("token", "ybwy2019interface");

    post.addRequestHeader("Content-Type", "application/json");

    JSONObject json=new JSONObject();

    json.put("datas", data);

    RequestEntity requestEntity = new StringRequestEntity(data, "application/json;charse=UTF-8", "UTF-8");

     post.setRequestEntity(requestEntity);

     httpClient.executeMethod(post); 

    String respStr = post.getResponseBodyAsString();   //获取返回值

     post.releaseConnection(); //释放连接

    相关文章

      网友评论

          本文标题:webservice

          本文链接:https://www.haomeiwen.com/subject/slobjhtx.html