API do Depurador de script
A API do Depurador de script fornece endpoints para depurar linhas de código JavaScript do lado do servidor, como regras de negócio e inclusões de script.
Para obter mais informações sobre o Depurador de script, consulte Depurador de script e Log de sessão.
Esta API está disponível por padrão.
Depurador de script - GET /js/debugpoints/script/{tableName}/{sysId}/{fieldName}
Recupere uma lista de pontos de interrupção ou logpoints em um script do lado do servidor, como uma regra de negócio ou inclusão de script.
Formato da URL
URL padrão: /api/now/js/debugpoints/script/{tableName}/{sysId}/{fieldName}
Parâmetros de solicitação compatíveis
| Nome | Descrição |
|---|---|
| tableName | Nome da tabela que contém o script do lado do servidor, como sys_script ou sys_script_include. Tipo de dados: cadeia de caracteres |
| sysId | Sys_id do script do lado do servidor. Tipo de dados: cadeia de caracteres |
| fieldName | Nome do campo que contém o conteúdo do script do lado do servidor. Tipo de dados: cadeia de caracteres |
| Nome | Descrição |
|---|---|
| Nenhum(a) |
| Nome | Descrição |
|---|---|
| Nenhum(a) |
Cabeçalhos
Os cabeçalhos de solicitação e resposta a seguir se aplicam somente a esta ação HTTP ou se aplicam a esta ação de maneira distinta. Para obter uma lista de cabeçalhos gerais usados na REST API, consulte Cabeçalhos de REST API compatíveis.
| Cabeçalho | Descrição |
|---|---|
| Aceitar | Formato de dados do corpo da resposta. Tipos compatíveis: application/json ou application/xml. Padrão: application/json |
| Cabeçalho | Descrição |
|---|---|
| Nenhum(a) |
Códigos de status
Os seguintes códigos de status se aplicam a esta ação HTTP. Para obter uma lista de códigos de status possíveis usados na REST API, consulte Códigos de resposta HTTP de REST API.
| Código do status | Descrição |
|---|---|
| 200 | Bem-sucedido. A solicitação foi processada com sucesso. |
| 403 | Usuário não autorizado. O usuário que executou a solicitação não tem permissão para acessar informações de ponto de interrupção ou de ponto de log para o registro especificado. |
Parâmetros do corpo da resposta (JSON ou XML)
| Nome | Descrição |
|---|---|
| canWrite | Sinalizador que indica se o usuário conectado no momento pode definir ou modificar pontos de interrupção do script. Valores possíveis:
Tipo de dados: booliano |
| pontos de depuração | Lista de todos os pontos de interrupção e logpoints no script.
Tipo de dados: objeto |
| debugpoints.breakpoint | Lista de todos os pontos de interrupção no script, apresentados como pares de chave-valor. A chave é o número da linha do ponto de interrupção. O valor é um objeto que contém o sys_id e o texto do ponto de interrupção.
Tipo de dados: objeto |
| debugpoints.breakpoint.<line_number> | Número de linha do ponto de interrupção.
Tipo de dados: objeto |
| debugpoints.breakpoint.<line_number> .evaluationString | Texto do ponto de interrupção. Se o ponto de interrupção for condicional, o assessmentString conterá o texto da condição. Se o ponto de interrupção não for condicional, o assessmentString será uma cadeia de caracteres vazia. Tipo de dados: cadeia de caracteres |
| debugpoints.breakpoint.<line_number> .sysId | Sys_id do ponto de interrupção. Tipo de dados: cadeia de caracteres |
| debugpoints.logpoint | Lista de todos os logpoints no script, apresentados como pares de chave-valor. A chave é o número da linha do logpoint. O valor é um objeto que contém o sys_id e o texto do logpoint.
Tipo de dados: objeto |
| debugpoints.logpoint.<line_number> | Número de linha para o logpoint.
Tipo de dados: objeto |
| debugpoints.logpoint.<line_number> .evaluationString | Texto do logpoint. Contém a mensagem que está sendo registrada. Tipo de dados: cadeia de caracteres |
| debugpoints.logpoint.<line_number> .sysId | Sys_id do logpoint. Tipo de dados: cadeia de caracteres |
| chave | Objeto que fornece detalhes sobre o script que está sendo depurado.
Tipo de dados: objeto |
| key.scriptField | Nome do campo que contém o script. Tipo de dados: cadeia de caracteres |
| key.scriptId | Sys_id do script. Tipo de dados: cadeia de caracteres |
| key.scriptType | Nome da tabela que contém o script. Tipo de dados: cadeia de caracteres |
| chave.valor | Os parâmetros de caminho usados para fazer a solicitação. Listado na seguinte ordem.
Tipo de dados: cadeia de caracteres |
| nome | Nome do script. Tipo de dados: cadeia de caracteres |
| script | Texto que exibe o código do script. Tipo de dados: cadeia de caracteres |
Exemplo de solicitação cURL
Solicitação de cURL
Recupera uma lista de logpoints e pontos de interrupção para um script do lado do servidor. Este script tem um ponto de log na linha 2, um ponto de interrupção na linha 11 e um ponto de interrupção condicional na linha 18.
curl "https://instance.servicenow.com/api/now/js/debugpoints/script/sys_script_include/d65f78c40a0a0b6900196656f35913d3/script" \
--request GET \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--user 'username':'password'
{
"result": {
"canWrite": true,
"debugpoints": {
"LOGPOINT": {
"2": {
"evaluationString": "A log message",
"sysId": "ba28b0fa739310101c233096fbf6a75e"
}
},
"BREAKPOINT": {
"11": {
"evaluationString": "",
"sysId": "dc5f5bf341256010f877587fbdf5ec1d"
},
"18": {
"evaluationString": "a == true",
"sysId": "3d4f5bf341256010f877587bdf5ecf6"
}
}
},
"script": "// script code",
"name": "AbstractAjaxProcessor",
"key": {
"scriptType": "sys_script_include",
"scriptId": "d65f78c40a0a0b6900196656f35913d3",
"scriptField": "script",
"value": "sys_script_include.d65f78c40a0a0b6900196656f35913d3.script"
}
}
}
Depurador de script - POST js/debugpoints/process
Adicione, atualize ou remova pontos de interrupção ou logpoints em um script do lado do servidor, como uma regra de negócio ou inclusão de script. Processe vários pontos de interrupção ou logpoints por vez.
Formato da URL
URL padrão: /api/now/js/debugpoints/process
Parâmetros de solicitação compatíveis
| Nome | Descrição |
|---|---|
| Nenhum(a) |
| Nome | Descrição |
|---|---|
| buscar tudo | Quando verdadeiro, retorna uma lista de todos os pontos de interrupção ou logpoints adicionados ou atualizados pelo usuário. Tipo de dados: booliano Padrão: falso |
| buscarTodosFiltros | Retorna uma lista filtrada de todos os pontos de interrupção ou logpoints adicionados ou atualizados pelo usuário. Valores válidos:
Use o símbolo de acento circunflexo (^) como separador para várias propriedades. Por exemplo, Tipo de dados: cadeia de caracteres |
| Nome | Descrição |
|---|---|
| debugpointTipo | Obrigatório. Tipo de ponto de depuração a ser adicionado, excluído ou atualizado. Valores válidos:
Tipo de dados: cadeia de caracteres |
| avaliaçãoString | Texto para um logpoint ou ponto de interrupção condicional. Para um logpoint, o evaluationString é a mensagem de log. Para um ponto de interrupção condicional, o evaluationString é a condição. Por exemplo, se você estiver fazendo um loop em uma lista de IDs de usuário e quiser que o depurador seja pausado somente quando o ID de usuário for 38493, você poderá adicionar um ponto de interrupção condicional dentro do loop com Se o ponto de interrupção não for um ponto de interrupção condicional, o evaluationString será uma cadeia de caracteres vazia. Tipo de dados: cadeia de caracteres |
| fieldName | Obrigatório. Nome do campo que contém o conteúdo do script do lado do servidor. Tipo de dados: cadeia de caracteres |
| LineNumber | Número de linha no script do lado do servidor que especifica onde adicionar, excluir ou atualizar o ponto de interrupção ou o ponto de log. Tipo de dados: número |
| operação | Obrigatório. Operação a ser executada para o ponto de interrupção ou logpoint. Valores válidos:
Tipo de dados: cadeia de caracteres |
| scriptId | Obrigatório. Sys_id do script do lado do servidor. Tipo de dados: cadeia de caracteres |
| tableName | Obrigatório. Nome da tabela que contém o script do lado do servidor, como sys_script ou sys_script_include. Tipo de dados: cadeia de caracteres |
Cabeçalhos
Os cabeçalhos de solicitação e resposta a seguir se aplicam somente a esta ação HTTP ou se aplicam a esta ação de maneira distinta. Para obter uma lista de cabeçalhos gerais usados na REST API, consulte Cabeçalhos de REST API compatíveis.
| Cabeçalho | Descrição |
|---|---|
| Aceitar | Formato de dados do corpo da resposta. Tipos compatíveis: application/json ou application/xml. Padrão: application/json |
| Tipo de conteúdo | Formato de dados do corpo da solicitação. Tipos compatíveis: application/json ou application/xml. Padrão: application/json |
| Cabeçalho | Descrição |
|---|---|
| Nenhum(a) |
Códigos de status
Os seguintes códigos de status se aplicam a esta ação HTTP. Para obter uma lista de códigos de status possíveis usados na REST API, consulte Códigos de resposta HTTP de REST API.
| Código do status | Descrição |
|---|---|
| 200 | Bem-sucedido. A solicitação foi processada com sucesso. |
Parâmetros do corpo da resposta (JSON ou XML)
| Nome | Descrição |
|---|---|
| requestDebugpoints | Lista dos pontos de interrupção e logpoints solicitados. Apresentado como uma matriz de objetos.
Tipo de dados: matriz |
| requestDebugpoints.ScriptId | Sys_id do script do lado do servidor. Tipo de dados: cadeia de caracteres |
| requestDebugpoints.evaluationString | Texto adicionado para um logpoint ou ponto de interrupção condicional. Para um logpoint, o evaluationString é a mensagem de log. Para um ponto de interrupção condicional, o evaluationString é a condição. Tipo de dados: cadeia de caracteres |
| pontosDeDepuraçãoSolicitados.operação | Operação realizada para o ponto de interrupção ou logpoint. Valores possíveis:
Tipo de dados: cadeia de caracteres |
| requestDebugpoints.tableName | Nome da tabela que contém o script do lado do servidor, como sys_script ou sys_script_include. Tipo de dados: cadeia de caracteres |
| requestDebugpoints.fieldNome | Nome do campo que contém o conteúdo do script do lado do servidor. Tipo de dados: cadeia de caracteres |
| pontosDeDepuraçãoSolicitados.status | Resultado da instrução para adicionar, excluir ou atualizar um ponto de interrupção ou logpoint específico. Valores possíveis:
Uma solicitação para adicionar, excluir ou atualizar um ponto de depuração é ignorada nas seguintes situações:
Tipo de dados: cadeia de caracteres |
| requestDebugpoints.lineNumber | Número de linha no script do lado do servidor que especifica onde o ponto de interrupção ou ponto de log foi adicionado, excluído ou atualizado. Tipo de dados: número |
| requestDebugpoints.debugpointType | Tipo de ponto de depuração adicionado, excluído ou atualizado. Valores possíveis:
Tipo de dados: cadeia de caracteres |
| status | Resultado da ação geral. O código de status da chamada HTTP. Tipo de dados: número |
Solicitação de cURL
Este exemplo adiciona um ponto de interrupção condicional na linha 12 do script.
curl "https://instance.servicenow.com/api/now/js/debugpoints/process" \
--request POST \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--data “[
{
\"tableName\": \"sys_script_include\",
\"scriptId\": \"d65f78c40a0a0b6900196656f35913d3\",
\"fieldname\": \"script\",
\"lineNumber\": 12,
\"evaluationString\": \"a == false\",
\"debugpointType\": \"breakpoint\",
\"operation\": \"add\"
}
]” \
--user 'username':'password'
{
"result": {
"requestedDebugpoints": [
{
"scriptId": "d65f78c40a0a0b6900196656f35913d3",
"evaluationString": "a == false",
"operation": "add",
"tableName": "sys_script_include",
"fieldName": "script",
"status": "success",
"lineNumber": 12,
"debugpointType": "breakpoint"
}
],
"status": 200
}
}