順豐BSP訂單號查詢接口SOAP的請求示例

字號:


    在一些接口的設(shè)計中有時用到了SOAP方式的請求,比如順豐BSP的接口。
    我嘗試不同方式的POST方式請求,要么完全請求不到東西,要么接收到亂碼,均以失敗告終。
    針對順豐接口的SOAP請求的核心代碼分享如下:
    代碼如下:
    >
    /**
    * 發(fā)送soap請求
    */
    private function _soap()
    {
    $client = new SoapClient($this->serviceUrl);
    $info = new stdClass();
    $info->arg0 = $this->xml;
    $param = array($info);
    $response = $client->__call(“sfexpressService”,$param);
    return $response->return ;
    }
    /**
    * 拼接出請求的xml
    */
    public function createXml()
    {
    $xml = ‘<Request service=”RouteService” lang=”zh-CN”>
    <Head>’.$this->user.’,’.$this->passWord.’</Head>
    <Body>
    <RouteRequest tracking_type=”1″ method_type=”1″ tracking_number=”‘.$this->invoice_no.’” />
    </Body>
    </Request>’;
    $this->xml = $xml;
    }
    提示:
    1.$this->serviceUrl 順豐分配的BSP請求地址,注意是?wsdl的地址
    2.$this->user,$this->passWord 即是順豐分配的ID和校驗(yàn)碼
    3.返回的return是一個XML的String,你可能需要simplexml_load_string來解析。