下面来看一个关于顺丰BSP订单号查询接口SOAP的请求示例,这个例子能帮助到各位同学,在一些接口的设计中有时用到了SOAP方式的请求,比如顺丰BSP的接口.
我尝试不同方式的POST方式请求,要么完全请求不到东西,要么接收到乱码,均以失败告终,针对顺丰接口的SOAP请求的核心代码分享如下:
- /**
- * 发送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 ;
- } //开源软件:Vevb.com
- /**
- * 拼接出请求的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和校验码.
3.返回的return是一个XML的String,你可能需要simplexml_load_string来解析.
新闻热点
疑难解答