php curl对接webService Soap遇到的问题

对接ems的时候遇到,因为没接触过,一脸懵逼......
先贴代码

        $dir = getcwd();
        $pem = $dir.'/client.pem';

        $ch = curl_init();

        curl_setopt($ch, CURLOPT_URL, $this->serverEMSURL);

        curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,false);  //是否验证证书
        curl_setopt($ch,CURLOPT_SSL_VERIFYHOST,false);  //是否验证host
        curl_setopt($ch,CURLOPT_SSLCERT ,$pem);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
        curl_setopt($ch, CURLOPT_POST, 1);
        curl_setopt($ch, CURLOPT_POSTFIELDS,$post_data);
        curl_setopt($ch, CURLOPT_HEADER, 0);

        $res = curl_exec($ch);

        $sn = str_replace('GBK','UTF8',$res);
        
        $xml = new \DOMDocument();
        $xml->preserveWhiteSpace=false;
        $xml->loadXML($sn);

        curl_close($ch);

主要就是这么发送请求,.

    private function getLogistice_Xml($sn,$order = '')
    {

$xmlstr = <<
        
        
        1047参数参数参数参数
        
        
        
XML;

        return $xmlstr;    
    }

以上这个xml的结构是用soapUI这个软件生成的,
生成出来是这个样子的,问号里面填要发送的参数


        
        
        ?
        
        
        

当时遇到的主要问题是,能连接上wsdl的webService,但是不知道怎么调用他的call方法,后面发现soap找了好久找到soapUI这个软件...然后找到一篇文章说要把尖括号转码...

SoapUI使用方法:↓
http://jingyan.baidu.com/article/574c521901e8966c8d9dc1bb.html?st=5&net_type=1&bd_page_type=1&os=1&rst=&word=ghost%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B

你可能感兴趣的:(php curl对接webService Soap遇到的问题)