RESTAPIResponse - com escopo, global

  • Versão de lançamento: Washingtondc
  • Atualizado 1 de fev. de 2024
  • 3 min. de leitura
  • A RESTAPIResponse API permite que você crie uma resposta RESTful para uma solicitação de REST API com script.

    Esta API é executada no namespace sn_ws.

    Nota:
    Você não pode criar uma instância de objetos deste tipo. Objetos desse tipo são criados automaticamente e podem ser acessados somente em scripts de recurso de REST API com script.

    RESTAPIResponse – getStreamWriter()

    Retorna o ResponseStreamWriter para esta resposta, permitindo que você grave diretamente no fluxo de resposta.

    Defina o tipo de conteúdo e o código de status usando as funções setHeaders e setStatus antes de chamar a função getStreamWriter.

    Tabela 1. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 2. Retorna
    Tipo Descrição
    RESTAPIResponseStream - com escopo, global O ResponseStreamWriter para esta resposta. Você pode usar este objeto para gravar diretamente no fluxo de resposta.
    response.setContentType('application/json');
    response.setStatus(200);
    var writer = response.getStreamWriter();

    RESTAPIResponse - setBody(corpo do objeto)

    Define o conteúdo do corpo a ser enviado na resposta do serviço Web.

    Tabela 3. Parâmetros
    Nome Tipo Descrição
    corpo Objeto

    O corpo da resposta, como um objeto JavaScript.

    O conteúdo do corpo é serializado automaticamente para JSON ou XML, dependendo do valor do cabeçalho Accept passado na solicitação.

    Tabela 4. Retorna
    Tipo Descrição
    vazio
    var body = {};
    body.name = "incident";
    body.number = "1234";
    body.caller = {"id": "user1"};
    response.setBody(body);
    
    var bodyArray = [];
    var body = {};
    body.name = "incident";
    body.number = "1234";
    body.caller = {"id":"user1"};
    bodyArray.push(body);
    response.setBody(bodyArray);

    RESTAPIResponse - setContentType(cadeia de caracteres "contentType")

    Atribui um valor ao cabeçalho Content-Type na resposta do serviço Web.

    Você deve definir um tipo de conteúdo de resposta antes de escrever a resposta. O tipo de conteúdo é definido automaticamente para respostas de cadeia de caracteres, com base no valor do cabeçalho Aceitar solicitação.

    Definir um tipo de conteúdo inválido faz com que a resposta seja padronizada como JSON. Falha ao definir um tipo de conteúdo resulta em um erro de código de status 500 ao enviar uma resposta binária.

    Consulte a documentação do cabeçalho W3 Content-Type para obter mais informações sobre esse cabeçalho.

    Tabela 5. Parâmetros
    Nome Tipo Descrição
    contentType Cadeia de caracteres O tipo de conteúdo do corpo da resposta, como aplicação/json.
    Tabela 6. Retorna
    Tipo Descrição
    vazio
    response.setContentType('application/json');

    RESTAPIResponse - setError(objeto de erro)

    Configura a resposta REST para retornar um erro.

    Tabela 7. Parâmetros
    Nome Tipo Descrição
    Erro Objeto Objeto de erro.

    Para obter mais informações sobre os tipos de objetos de erro que podem ser usados, consulte Exemplo de Scripted REST API - amostras de script.

    Tabela 8. Retorna
    Tipo Descrição
    vazio

    O exemplo a seguir mostra como retornar um erro de um recurso REST de script.

    var queryParams = request.queryParams;
    var userId = String(queryParams.user_id || '');
    var fileId = String(queryParams.file_id || '');
    if (!userId || !fileId){
      response.setError(new sn_ws_err.BadRequestError('Missing required parameters.'));
      return;
    }

    RESTAPIResponse - setHeader(Cabeçalho da cadeia de caracteres, Valor da cadeia de caracteres)

    Atribua um valor a um cabeçalho de resposta do serviço REST.

    Tabela 9. Parâmetros
    Nome Tipo Descrição
    cabeçalho Cadeia de caracteres O cabeçalho que você deseja definir.
    valor Cadeia de caracteres O valor a ser atribuído ao cabeçalho especificado.
    Tabela 10. Retorna
    Tipo Descrição
    vazio
    response.setHeader("Location","<URI>");

    RESTAPIResponse - setHeaders(cabeçalhos do objeto)

    Define os cabeçalhos da resposta do serviço Web.

    Tabela 11. Parâmetros
    Nome Tipo Descrição
    cabeçalhos Objeto Um objeto JavaScript que lista cada cabeçalho e o valor a ser atribuído a esse cabeçalho.
    Tabela 12. Retorna
    Tipo Descrição
    vazio
    var headers = {};
    headers.X-Total-Count=100;
    headers.Location='https://instance.service-now.com/<endpoint_to_resource>';
    response.setHeaders(headers);

    RESTAPIResponse - setLocation(cadeia de caracteres location)

    Atribui um valor ao cabeçalho Local na resposta do serviço Web.

    Consulte a documentação do cabeçalho do local do W3 para obter mais informações sobre este cabeçalho.

    Tabela 13. Parâmetros
    Nome Tipo Descrição
    Nenhum Cadeia de caracteres Um URI absoluto para o qual o destinatário da resposta será redirecionado.
    Tabela 14. Retorna
    Tipo Descrição
    vazio

    RESTAPIResponse - setStatus(Number status)

    Define o número do código de status da resposta do serviço Web.

    Tabela 15. Parâmetros
    Nome Tipo Descrição
    status Número O código de status a ser enviado na resposta, como 200 para indicar sucesso. Passar um valor não numérico, como uma cadeia de caracteres, faz com que o código de status seja padronizado como 0.
    Tabela 16. Retorna
    Tipo Descrição
    vazio
    response.setStatus(200);