GlideHTTPRequest - Global
L’API GlideHTTPRequest fournit des méthodes utilitaires permettant d’exécuter des fonctions courantes avec les requêtes HTTP Glide.
Vous pouvez utiliser cette API dans des scripts globaux côté serveur. Pour utiliser cette classe, instanciez un objet GlideHTTPRequest à l’aide du constructeur. Le constructeur nécessite une URL de point de terminaison comme paramètre d’entrée.
GlideHTTPRequest - addHeader(nom de chaîne, valeur de chaîne)
Ajoute un en-tête à votre requête HTTP.
| Nom | Type | Description |
|---|---|---|
| nom | Chaîne | Nom de l’en-tête, par exemple Accepter ou Type de contenu. |
| valide | Chaîne | Valeur de l’en-tête, par exemple application/json. |
| Type | Description |
|---|---|
| nul |
Cet exemple ajoute l’en-tête de demande « Accepter » et renvoie le nombre d’incidents à partir d’une instance ServiceNow, en analysant les réponses JSON ou XML.
var instance = 'dev12345';
var username = 'admin';
var password = 'yourpassword';
// Instantiate request with ServiceNow API incidents table endpoint
var request = new GlideHTTPRequest('https://'+instance+'.service-now.com/api/now/table/incident');
// Add authentication data
request.setBasicAuth(username, password);
// Add the Accept header to get JSON response
request.addHeader('Accept', 'application/json');
// Execute the GET request
var response = request.get();
// Print the results: status code and number of records returned
gs.print(response.getStatusCode());
gs.print('(JSON) Incidents returned: ' + JSON.parse(response.getBody()).result.length);
// Replace the Accept header to get XML response
request.addHeader('Accept', 'application/xml');
// Execute the GET request
var response = request.get();
// Print the results: status code and number of records returned
gs.print(response.getStatusCode());
gs.print('(XML) Incidents returned: ' + gs.xmlToJSON(response.getBody()).response.result.length);
Sortie
200
(JSON) Incidents returned: 66
200
(XML) Incidents returned: 66
GlideHTTPRequest - addParameter(nom de chaîne, valeur de chaîne)
Ajoute un paramètre à votre requête HTTP.
| Nom | Type | Description |
|---|---|---|
| nom | Chaîne | Paramètre à ajouter, tel que sysparm_limit. |
| valide | Chaîne | Valeur du paramètre. |
| Type | Description |
|---|---|
| nul |
Cet exemple montre comment ajouter le sysparm_limit paramètre à l’appel de point de terminaison REST pour limiter le nombre de réponses renvoyées.
var instance = 'dev12345';
var username = 'admin';
var password = 'yourpassword';
// Instantiate request with ServiceNow API incidents table endpoint
var request = new GlideHTTPRequest('https://'+instance+'.service-now.com/api/now/table/incident');
// Add authentication data
request.setBasicAuth(username, password);
// Add the 'sysparm_limit' parameter to limit the number of records returned
request.addParameter('sysparm_limit', 1);
// Execute the GET request
var response = request.get();
// Print the results: status code and number of records returned
gs.print(response.getStatusCode());
gs.print('Incidents returned: ' + JSON.parse(response.getBody()).result.length);
Sortie :
200
Incidents returned: 1
GlideHTTPRequest - setBasicAuth(String userName, String password)
Définit un nom d’utilisateur et un mot de passe pour l’authentification de base.
| Nom | Type | Description |
|---|---|---|
| userName | Chaîne | Nom d’utilisateur à utiliser pour l’authentification. |
| mot de passe | Chaîne | Mot de passe de l’utilisateur à utiliser pour l’authentification. |
| Type | Description |
|---|---|
| nul |
Cet exemple montre comment utiliser la méthode setBasicAuth() pour définir le nom d’utilisateur et le mot de passe pour l’appel de point de terminaison REST associé.
var instance = 'dev12345';
var username = 'admin';
var password = 'yourpassword';
// Instantiate request with ServiceNow API incidents table endpoint
var request = new GlideHTTPRequest('https://'+instance+'.service-now.com/api/now/table/incident');
// Add authentication data
request.setBasicAuth(username, password);
// Add the Accept header to get JSON response
request.addHeader('Accept', 'application/json');
// Execute the GET request
var response = request.get();
// Print the results: status code and number of records returned
gs.print(response.getStatusCode());
gs.print('(JSON) Incidents returned: ' + JSON.parse(response.getBody()).result.length);
// Replace the Accept header to get XML response
request.addHeader('Accept', 'application/xml');
// Execute the GET request
var response = request.get();
// Print the results: status code and number of records returned
gs.print(response.getStatusCode());
gs.print('(XML) Incidents returned: ' + gs.xmlToJSON(response.getBody()).response.result.length);
Sortie
200
(JSON) Incidents returned: 66
200
(XML) Incidents returned: 66
GlideHTTPRequest : setContentType (type de chaîne)
Définit l’en-tête Content-Type de votre requête HTTP sur la valeur spécifiée.
| Nom | Type | Description |
|---|---|---|
| type | Chaîne | Type de contenu à définir, tel que application/json ou multipart/form-data. Pour plus d’informations sur le type de contenu, reportez-vous à la section https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Type. |
| Type | Description |
|---|---|
| nul |
Cet exemple montre comment définir l’en-tête de demande Content-Type pour un appel de point de terminaison REST à l’aide de la méthode setContentType().
var instance = 'dev12345';
var username = 'admin';
var password = 'yourpassword';
// Instantiate request with ServiceNow API incidents table endpoint
var request = new GlideHTTPRequest('https://'+instance+'.service-now.com/api/now/table/incident');
// Add authentication data
request.setBasicAuth(username, password);
// Set up incident record to post
// Set the Content-Type of the POST
request.setContentType('application/json');
// Execute the POST request
var response = request.post();
// Print the results: status code and number of records returned
gs.print(response.getStatusCode());
Sortie
200
GlideHTTPRequest : setFollowRedirect(boolean followRedirect)
Active ou désactive l’option de redirection de suivi pour un appel de point de terminaison REST.
Pour plus d’informations sur les redirections HTTP, reportez-vous à la section https://developer.mozilla.org/en-US/docs/Web/HTTP/Redirections.
| Nom | Type | Description |
|---|---|---|
| followRedirect | Booléen | Marqueur qui indique si le point de terminaison doit suivre une redirection d’URL renvoyée par le point de terminaison. Valeurs valides : Valeur par défaut : true
|
| Type | Description |
|---|---|
| nul |
Cet exemple montre comment désactiver les redirections pour un appel de point de terminaison à l’aide de la méthode setFollowRedirect().
var instance = 'dev12345';
var username = 'admin';
var password = 'yourpassword';
// Instantiate request with ServiceNow API incidents table endpoint
var request = new GlideHTTPRequest('https://'+instance+'.service-now.com/api/now/table/incident');
// Add authentication data
request.setBasicAuth(username, password);
// Add the Accept header to get JSON response
request.addHeader('Accept', 'application/json');
// Turn off follow redirect - default is on (true)
request.setFollowRedirect(false);
// Execute the GET request
var response = request.get();
// Print the results: status code and number of records returned
gs.print(response.getStatusCode());
Sortie
200
GlideHTTPRequest - setHttpTimeout(int timeout)
Définit la valeur du délai HTTP en millisecondes.
| Nom | Type | Description |
|---|---|---|
| timeout | Entier | Valeur de délai à définir. Unité : Millisecondes |
| Type | Description |
|---|---|
| nul |
Cet exemple montre comment définir la valeur de délai d’expiration d’un appel de point de terminaison à l’aide de la méthode setTimeout().
var instance = 'dev12345';
var username = 'admin';
var password = 'yourpassword';
// Instantiate request with ServiceNow API incidents table endpoint
var request = new GlideHTTPRequest('https://'+instance+'.service-now.com/api/now/table/incident');
// Add authentication data
request.setBasicAuth(username, password);
// Add the Accept header to get JSON response
request.addHeader('Accept', 'application/json');
// Set the time out value
request.setHttpTimeOut(1000);
// Execute the GET request
var response = request.get();
// Print the results: status code and number of records returned
gs.print(response.getStatusCode());
Sortie
200
GlideHTTPRequest : setLogLevel(String logLevel)
Définit le niveau de journalisation d’une demande HTTP.
| Nom | Type | Description |
|---|---|---|
| Niveau de connexion | Chaîne | Niveau de journalisation disponible. Remarque : Pour des raisons de performances, il est conseillé de laisser la journalisation des requêtes HTTP en production à l’adresse basic. Valeurs valides :
Par défaut : basique |
| Type | Description |
|---|---|
| nul |
Cet exemple montre comment définir le niveau de journal pour un appel de point de terminaison à l’aide de la méthode setLogLevel().
var instance = 'dev12345';
var username = 'admin';
var password = 'yourpassword';
// Instantiate request with ServiceNow API incidents table endpoint
var request = new GlideHTTPRequest('https://'+instance+'.service-now.com/api/now/table/incident');
// Add authentication data
request.setBasicAuth(username, password);
// Add the Accept header to get JSON response
request.addHeader('Accept', 'application/json');
// Set the time out value
request.setLogLevel(elevated);
// Execute the GET request
var response = request.get();
// Print the results: status code and number of records returned
gs.print(response.getStatusCode());
Sortie
200
GlideHTTPRequest : setupProxy(hôte de chaîne, port de chaîne)
Définit l’hôte proxy et le port pour l’appel REST associé.
| Nom | Type | Description |
|---|---|---|
| hôte | Chaîne | Hôte proxy |
| port | Chaîne | Port proxy |
| Type | Description |
|---|---|
| nul |