在一些接口的设计中有时用到了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 ;

}

/**

* 拼接出请求的xml

*/

public function createXml()

{

$xml = ‘

invoice_no.’” />

’;

$this->xml = $xml;

}

提示:

1.$this->serviceUrl 顺丰分配的BSP请求地址,注意是?wsdl的地址

2.$this->user,$this->passWord 即是顺丰分配的ID和校验码

3.返回的return是一个XML的String,你可能需要simplexml_load_string来解析。

更多信息请查看IT技术专栏

Logo

电商企业物流数字化转型必备!快递鸟 API 接口,72 小时快速完成物流系统集成。全流程实战1V1指导,营造开放的API技术生态圈。

更多推荐