Home > Article > Backend Development > Debugging SOAP error messages under php5.5.12
The content of this article is about debugging SOAP error messages under php5.5.12. It has a certain reference value. Now I share it with you. Friends in need can refer to it.
When debugging with soap today , the following error keeps appearing
{ "respcode": 202, "respmsg": "looks like we got no XML document", "data": "" }
I have found various methods but cannot solve it. My code is as follows:
Server side:
function __construct() { parent::__construct(); $this->load->model('baogaolist'); $this->server = new SoapServer(null, ['uri' => '']); } function checkreport() { $this->load->model('baogaolist'); $this->server->setObject($this->baogaolist); $this->server->handle(); }
Client call:
$url = $this->config->item('car_battery_check_url'); //获取信息地址 try { $a = new SoapClient(null, [ 'location' => $url . '/report/checkreport', 'uri' => '' ]); $detail = $a->get_detail($this->storeid, $check_id); } catch (SoapFault $e) { resp_msg(202,$e->getMessage()); }
In the php5.4.44 environment, the data can be successfully obtained, but in php5.5.12, errors will always be reported
Finally, in the php5.5.12 environment, complete the configuration uri and solve the problem
function __construct() { parent::__construct(); $this->load->model('baogaolist'); $this->server = new SoapServer(null, ['uri' => 'http://172.16.4.29:8000/index.php/report/checkreport']); }
try { $a = new SoapClient(null, [ 'location' => $url . '/report/checkreport', 'uri' => 'http://172.16.4.29:8000/index.php/report/checkreport' ]); $detail = $a->get_detail($this->storeid, $check_id); } catch (SoapFault $e) { resp_msg(202,$e->getMessage()); }
Only add specific addresses to both client and server
Related recommendations:
PHP implements WebService through SOAP
The above is the detailed content of Debugging SOAP error messages under php5.5.12. For more information, please follow other related articles on the PHP Chinese website!