GlideHTTPRequest : global
L’API GlideHTTPRequest fournit des méthodes utilitaires permettant d’exécuter des fonctions courantes avec des requêtes HTTP Glide.
Vous pouvez utiliser cette API dans les scripts globaux côté serveur. Pour utiliser cette classe, instancier 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 demande HTTP.
| Nom | Type | Description |
|---|---|---|
| nom | Chaîne | Nom de l’en-tête, tel que Accepter ou Type-contenu. |
| valide | Chaîne | Valeur d’en-tête, telle que application/json. |
| Type | Description |
|---|---|
| nul |
Cet exemple ajoute l’en-tête de demande « Accepter » et renvoie le nombre d’incidents 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 demande HTTP.
| Nom | Type | Description |
|---|---|---|
| nom | Chaîne | Paramètre à ajouter, par sysparm_limitexemple . |
| 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 demande 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(booléen 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 indiquant si le point de terminaison doit suivre toute redirection d’URL renvoyée par le point de terminaison. Valeurs valides : 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(délai d’expiration int)
Définit la valeur du délai d’expiration HTTP en millisecondes.
| Nom | Type | Description |
|---|---|---|
| timeout | Entier | Valeur du délai d’expiration à définir. Unité : millisecondes |
| Type | Description |
|---|---|
| nul |
Cet exemple montre comment définir la valeur du délai d’expiration pour 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 journal d’une demande HTTP.
| Nom | Type | Description |
|---|---|---|
| logLevel | Chaîne | Niveau de journalisation disponible. Remarque : Pour des raisons de performances, en production, il est conseillé de laisser la journalisation des requêtes HTTP à basic. Valeurs valides :
Par défaut : basique |
| Type | Description |
|---|---|
| nul |
Cet exemple montre comment définir le niveau de journalisation d’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 |