Scripted SOAP Web Services

  • Versão de lançamento: Xanadu
  • Atualizado 1 de ago. de 2024
  • 2 min. de leitura
  • Os serviços web SOAP com script permitem que um administrador ServiceNow crie serviços web SOAP personalizados.

    Você pode definir parâmetros de entrada e saída para o serviço web SOAP e usar JavaScript para executar operações. Embora este recurso seja muito poderoso, use serviços web diretos ou conjuntos para importação de serviços web SOAP sempre que possível, pois eles são mais simples de implementar e manter.

    Segurança

    Os serviços web SOAP com script têm as mesmas opções de segurança de base que todos os serviços web SOAP. Para obter detalhes sobre a segurança de serviços web SOAP, consulte Segurança de serviços web SOAP.

    Quando a segurança estrita é imposta em um sistema, o usuário autenticado por HTTP deve ter a função soap_script para executar o serviço web com script.

    WSDL

    Todas as tabelas ServiceNow e conjuntos para importação geram dinamicamente documentos XML de WSDL (Web Service Definition Language, Linguagem de definição de serviço web) que descrevem seu esquema de tabela e as operações disponíveis.

    Impor conformidade com WSDL

    Você pode forçar a resposta para listar os valores de saída na mesma ordem definida no WSDL.

    Quando você cria um serviço web SOAP com script, o WSDL gerado é baseado nas listas relacionadas a Parâmetros de entrada e Parâmetros de saída. A resposta SOAP real enviada pelo serviço com script é determinada pelo Script. Este comportamento pode fazer com que o script retorne valores de saída em uma ordem diferente da definida no WSDL.

    Para impor a ordem dos parâmetros de saída conforme definido na lista relacionada, marque a caixa de seleção Conformidade de WSDL. Quando esta caixa de seleção está marcada, o serviço Web reordena os parâmetros retornados pelo script para corresponder à ordem no WSDL.
    Nota:
    Se parâmetros de resposta adicionais forem retornados pelo script, mas não estiverem definidos na lista relacionada Parâmetros de resposta, esses parâmetros serão excluídos da resposta quando a Conformidade de WSDL for selecionada.
    Tabela 1. Lista relacionada de parâmetros de saída
    Parâmetro Ordem
    Parâmetro 1 200
    Parâmetro 2 300
    Parâmetro 3 100

    A seguir está o script que define valores para os parâmetros de saída definidos. Observe que neste script de exemplo os parâmetros são definidos em uma ordem diferente da definida na lista relacionada Parâmetros de saída. Observe também o parâmetro adicional param4 que não está definido na lista relacionada.

    Response.param1 = 1;
    Response.param4 = 4;
    Response.param3 = 3;

    Quando a caixa de seleção Conformidade de WSDL está definida como falsa, a resposta SOAP gerada pelo script é a seguinte:

    <response>
                    <param1>1</param1>
                    <param4>4</param1>
                    <param3>3</param1>
    </response>
    Quando a caixa de seleção Conformidade de WSDL é verdadeira, a resposta SOAP gerada pelo script é a seguinte:
    <response>
                    <param3>3</param1>
                    <param1>1</param1>
    </response>

    WSDL Estático

    Alguns clientes de serviço web exigem acesso SOAP à sua instância por meio de um formato WSDL específico. Este formato necessário pode ser diferente do formato WSDL da ServiceNow padrão. Nesses casos, você pode criar um WSDL estático que corresponda ao formato necessário.

    Variáveis globais

    Para facilitar o processamento personalizado de solicitações SOAP de entrada, as seguintes variáveis globais estão disponíveis no contexto de script:
    • soapRequestDocument: objeto Java org.w3c.dom.Document que representa o envelope SOAP de entrada.
    • soapRequestXML: objeto de cadeia de caracteres que representa o XML de envelope SOAP de entrada.
    • request: objeto Javascript que contém valores mapeados (mapeados para nomes de parâmetro de entrada) do envelope SOAP de entrada.
    • response: objeto Javascript que permite personalizar os valores de resposta. Consulte Personalizar resposta