WebService接口地址:http://222.198.125.190:8080/KxjsService/KxjsService?wsdl请问在php中如何调用这个接口中的query方法?

解决方案 »

  1.   

    $client = new SoapClient('http://222.198.125.190:8080/KxjsService/KxjsService?wsdl');
        
    $funcs = $client->__getFunctions ();
    $types = $client->__getTypes();/*
    $funcs的值:
    $funcs[0] : (string:38) queryResponse query(query $parameters)$types的值
    $types[0] : 
    (string:93) struct kxjsVo {
     string jc;
     string xnm;
     string xqh;
     string xqj;
     string xqm;
     string zc;
    }$types[1]:
    (string:32) struct query {
     kxjsVo kxjsVo;
    }$types[2]:
    (string:40) struct queryResponse {
     string string;
    }
    */$result = $client->__soapCall("query", array("parameters" => ???));
    请问:到这里这个参数该怎么传?
      

  2.   

    queryResponse query(query $parameters) 方法需要一个 query 类型的结构$param = array(
    {
      'kxjsVo' =>  array(
        'jc' => ?,
        'xnm' => ?,
        'xqh' => ?,
        'xqj' => ?,
        'xqm' => ?,
        'zc' => ?,
      )
    );
    值自己填$result = $client->__soapCall("query", array($param));

    $result = $client->query($param);
    都可以
      

  3.   


    首先非常感谢你的回复,但是这样写不行,调试结果:
    testXXXXXXXXXX:SoapClient::_doRequest(): connect() failed:由于目标计算机积极拒绝,无法连接。
      

  4.   

    但是我通过SoapUI查看是没有问题的呀,运行后能返回结果。