Exemple d’utilisation directe de SOAPMessageV2

  • Rversion finale: Washingtondc
  • Mis à jour 1 févr. 2024
  • 1 minute de lecture
  • Vous pouvez envoyer un message SOAP sortant directement au point de terminaison.

    Dans cet exemple, le script envoie un message SOAP demandant une cotation et attend une réponse. S’il n’y a pas de réponse du fournisseur de service Web, ou si l’enregistrement de message SOAP spécifié n’est pas disponible, le script génère une erreur, gérée dans cet exemple par le bloc try-catch.

    var requestBody;
    var responseBody;
    var status;
    var sm;
    try{
    	sm = new sn_ws.SOAPMessageV2("StockQuote", "GetQuote");  // Might throw exception if message doesn't exist or not visible due to scope
    	sm.setBasicAuth("admin","admin");
    	sm.setStringParameter("symbol", "NOW");
    	sm.setStringParameterNoEscape("xml_data","<data>test</data>");
    	sm.setHttpTimeout(10000) //In Milli seconds. Wait at most 10 seconds for response from http request.
    
    	response = sm.execute();//Might throw exception if http connection timed out or some issue with sending request itself because 	of encryption/decryption of password and stuff
    	responseBody = response.haveError() ? response.getErrorMessage() : response.getBody();
    	status = response.getStatusCode();
    } catch(ex) {
    	responseBody = ex.getMessage();
    	status = '500';
    } finally {
    	requestBody = sm ? sm.getRequestBody():null;
    }
    gs.info("Request Body: " + requestBody);
    gs.info("Response: " + responseBody);
    gs.info("HTTP Status: " + status);