ホームページ  >  記事  >  バックエンド開発  >  php5.5.12 での SOAP エラー メッセージのデバッグ

php5.5.12 での SOAP エラー メッセージのデバッグ

不言
不言オリジナル
2018-04-28 09:03:352038ブラウズ

この記事の内容は、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 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。