Heim  >  Artikel  >  Backend-Entwicklung  >  Debuggen von SOAP-Fehlermeldungen unter php5.5.12

Debuggen von SOAP-Fehlermeldungen unter php5.5.12

不言
不言Original
2018-04-28 09:03:352038Durchsuche

Der Inhalt dieses Artikels befasst sich mit dem Debuggen von SOAP-Fehlermeldungen unter PHP5.5.12. Er hat einen gewissen Referenzwert. Jetzt können Freunde in Not darauf zurückgreifen.

Beim Debuggen mit Soap , der folgende Fehler erscheint immer wieder

{
    "respcode": 202,
    "respmsg": "looks like we got no XML document",
    "data": ""
}

Ich habe verschiedene Methoden gefunden, kann ihn aber nicht lösen. Mein Code lautet wie folgt:

Serverseite:

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-Aufruf:

$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());
        }

Die Daten können erfolgreich in der PHP5.4.44-Umgebung abgerufen werden, in PHP5.5.12 werden jedoch immer Fehler gemeldet

Vervollständigen Sie schließlich in der PHP5.5.12-Umgebung die Konfigurations-URI und das Problem ist gelöst

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());
        }

Fügen Sie spezifische Adressen sowohl zum Client als auch zum Server hinzu

Verwandte Empfehlungen:

PHP implementiert WebService über SOAP



Das obige ist der detaillierte Inhalt vonDebuggen von SOAP-Fehlermeldungen unter php5.5.12. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn