Maison >interface Web >js tutoriel >Comment créer un client SOAP simple en JavaScript sans bibliothèques externes ?

Comment créer un client SOAP simple en JavaScript sans bibliothèques externes ?

Patricia Arquette
Patricia Arquetteoriginal
2024-11-30 21:06:12317parcourir

How to Create a Simple SOAP Client in JavaScript Without External Libraries?

Implémentation SOAP simple à l'aide de JavaScript

Comment créer un exemple SOAP de base à l'aide de JavaScript ?

Pour fournir un exemple pratique et une réponse complète, le client SOAP doit répondre aux critères suivants :

  • Fonctionnalité : Doit être opérationnel.
  • Transfert de paramètres : possibilité d'envoyer un paramètre variable à partir du code.
  • Traitement des résultats : capacité de récupérer et d'utiliser une valeur de résultat.
  • Compatibilité du navigateur : fonctionne avec la plupart des navigateurs modernes.
  • Simplicité et concision : utilise un minimum de code et évite les bibliothèques.

Solution

Ce qui suit est le client SOAP JavaScript le plus simple :

function soap() {
    var xmlhttp = new XMLHttpRequest();
    xmlhttp.open('POST', 'https://somesoapurl.com/', true);
    var sr = '<?xml version="1.0" encoding="utf-8"?>' +
        '<soapenv:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:api="http://127.0.0.1/Integrics/Enswitch/API" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">' +
        '<soapenv:Body>' +
        '<api:some_api_call soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">' +
        '<username xsi:type="xsd:string">login_username</username>' +
        '<password xsi:type="xsd:string">password</password>' +
        '</api:some_api_call>' +
        '</soapenv:Body>' +
        '</soapenv:Envelope>';
    xmlhttp.onreadystatechange = function () {
        if (xmlhttp.readyState == 4) {
            if (xmlhttp.status == 200) {
                alert(xmlhttp.responseText);
            }
        }
    }
    xmlhttp.setRequestHeader('Content-Type', 'text/xml');
    xmlhttp.send(sr);
}

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