Personnaliser la réponse
Suivez cet exemple pour personnaliser et contrôler la charge utile XML d’une réponse SOAP.
Avant de commencer
Rôle requis : web_service_admin ou admin
Procédure
-
Créez un document XML personnalisé à l’aide de l’objet XMLDocument script include.
Remarque :Lors de la création d’un service Web scripté dans une application incluse dans le périmètre, vous devez utiliser l’API XMLDocument2 .
-
Définir son élément de document sur la variable response.soapResponseElement dans un service Web scripté.
Par exemple, le script de service Web scripté suivant :
var xmldoc = new XMLDocument2(); xmldoc.parseXML("<myResponse></myResponse>"); xmldoc.createElementWithTextValue("element_one", "test"); xmldoc.createElementWithTextValue("element_two", "new2 value"); var el = xmldoc.createElement("element_three"); xmldoc.setCurrentElement(el); xmldoc.createElementWithTextValue("newChild", "test child element"); response.soapResponseElement = xmldoc.getDocumentElement();Est utilisé pour accepter la demande suivante :<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tes="http://www.service-now.com/TestCustomResponse"> <soapenv:Header/> <soapenv:Body> <tes:execute/> </soapenv:Body> </soapenv:Envelope>Lequel répondra avec la réponse SOAP suivante :<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tes="http://www.service-now.com/TestCustomResponse"> <soapenv:Header/> <soapenv:Body> <myResponse> <element_one>test</element_one> <element_two>new2 value</element_two> <element_three> <newChild>test child element</newChild> </element_three> </myResponse> </soapenv:Body> </soapenv:Envelope>Le support WSDL devra être créé en externe. Le point de terminaison SOAP devra être renvoyé au service Web scripté en question.