Maison  >  Article  >  développement back-end  >  Débogage des messages d'erreur SOAP sous php5.5.12

Débogage des messages d'erreur SOAP sous php5.5.12

不言
不言original
2018-04-28 09:03:352094parcourir

Le contenu de cet article concerne le débogage des messages d'erreur SOAP sous php5.5.12. Il a une certaine valeur de référence. Maintenant, je le partage avec vous. Les amis dans le besoin peuvent s'y référer

Lors du débogage avec du savon aujourd'hui. , l'erreur suivante continue d'apparaître

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

J'ai trouvé différentes méthodes mais je n'arrive pas à la résoudre. Mon code est le suivant :

Côté serveur :

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. appelez :

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

Les données peuvent être obtenues avec succès dans l'environnement php5.4.44, mais les erreurs seront toujours signalées dans php5.5.12

Enfin, dans l'environnement php5.5.12, complétez l'uri de configuration, le problème est résolu

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

Le client et le serveur doivent ajouter des adresses spécifiques

Recommandations associées :

PHP est implémenté via SOAP WebService



Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn