php5.5.12 下调试 SOAP 报错信息

不言
发布: 2023-03-25 06:08:01
原创
2053 人浏览过

这篇文章介绍的内容是关于php5.5.12 下调试 SOAP 报错信息,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下

今天用soap调试的时候,一直出现如下错误

{
    "respcode": 202,
    "respmsg": "looks like we got no XML document",
    "data": ""
}
登录后复制

找了各种方法没解决,我的代码如下:

服务器端:

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();
    }
登录后复制

客户端调用:

$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());
        }
登录后复制

在php5.4.44环境下就能成功拿到数据,但是在php5.5.12就会一直报错

最后,在php5.5.12环境下,将配置 uri 补全,问题解决

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());
        }
登录后复制

客户端和服务器端都加上具体的地址才行

相关推荐:

PHP通过SOAP实现WebService



以上是php5.5.12 下调试 SOAP 报错信息 的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!