GlideHTTPRequest – Global
Die GlideHTTPRequest- API bietet Dienstprogrammmethoden zum Ausführen allgemeiner Funktionen mit Glide-HTTP-Anforderungen.
Sie können diese API in globalen serverseitigen Skripts verwenden. Um diese Klasse zu verwenden, instanziieren Sie ein GlideHTTPRequest-Objekt mithilfe des Konstruktors. Der Konstruktor benötigt eine Endpunkt-URL als Eingabeparameter.
GlideHTTPRequest – addHeader(String name, String value)
Fügt Ihrer HTTP-Anforderung eine Kopfzeile hinzu.
| Name | Typ | Beschreibung |
|---|---|---|
| Name | Zeichenfolge | Headername, z. B. „Accept“ oder „Content-Type“. |
| Wert | Zeichenfolge | Headerwert, z. B. application/json. |
| Typ | Beschreibung |
|---|---|
| void |
Dieses Beispiel fügt die Anforderungskopfzeile „Akzeptieren“ hinzu und gibt die Anzahl der Incidents aus einer ServiceNow-Instanz zurück, wobei die JSON- oder XML-Antworten analysiert werden.
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);
Ausgabe
200
(JSON) Incidents returned: 66
200
(XML) Incidents returned: 66
GlideHTTPRequest – addParameter(String name, String value)
Fügt Ihrer HTTP-Anforderung einen Parameter hinzu.
| Name | Typ | Beschreibung |
|---|---|---|
| Name | Zeichenfolge | Hinzuzufügender Parameter, z. B. sysparm_limit. |
| Wert | Zeichenfolge | Wert für den Parameter. |
| Typ | Beschreibung |
|---|---|
| void |
Dieses Beispiel zeigt, wie Sie dem REST-Endpunktaufruf den Parameter sysparm_limit hinzufügen, um die Anzahl der zurückgegebenen Antworten zu begrenzen.
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);
Ausgabe:
200
Incidents returned: 1
GlideHTTPRequest – setBasicAuth(String userName, String password)
Legt einen Benutzernamen und ein Passwort für die Basic Authentication fest.
| Name | Typ | Beschreibung |
|---|---|---|
| userName | Zeichenfolge | Benutzername für die Authentifizierung. |
| Kennwort | Zeichenfolge | Für die Authentifizierung verwendetes Passwort des Anwenders. |
| Typ | Beschreibung |
|---|---|
| void |
Dieses Beispiel zeigt, wie Sie mit der setBasicAuth()- Methode den Benutzernamen und das Passwort für den zugeordneten REST-Endpunktaufruf festlegen.
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);
Ausgabe
200
(JSON) Incidents returned: 66
200
(XML) Incidents returned: 66
GlideHTTPRequest – setContentType(String type)
Legt die Content-Type-Kopfzeile für Ihre HTTP-Anforderung auf den angegebenen Wert fest.
| Name | Typ | Beschreibung |
|---|---|---|
| Typ | Zeichenfolge | Festzulegender Inhaltstyp, z. B. application/json oder multipart/form-data. Weitere Informationen zu Content-Type finden Sie unter https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Type. |
| Typ | Beschreibung |
|---|---|
| void |
Dieses Beispiel zeigt, wie der Content-Type- Anforderungsheader für einen REST-Endpunktaufruf mit der setContentType()- Methode festgelegt wird.
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());
Ausgabe
200
GlideHTTPRequest – setFollowRedirect(boolean followRedirect)
Aktiviert oder deaktiviert die Option „Follow Redirect“ für einen REST-Endpunktaufruf.
Weitere Informationen zu HTTP-Weiterleitungen finden Sie unter https://developer.mozilla.org/en-US/docs/Web/HTTP/Redirections.
| Name | Typ | Beschreibung |
|---|---|---|
| followRedirect | Boolean | Kennzeichnung, die angibt, ob der Endpunkt einer vom Endpunkt zurückgegebenen URL-Umleitung folgen soll. Gültige Werte: Standardwert: true
|
| Typ | Beschreibung |
|---|---|
| void |
Dieses Beispiel zeigt, wie Umleitungen für einen Endpunktaufruf mit der setFollowRedirect()- Methode deaktiviert werden.
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());
Ausgabe
200
GlideHTTPRequest – setHttpTimeout(int timeout)
Legt den HTTP-Zeitüberschreitungswert in Millisekunden fest.
| Name | Typ | Beschreibung |
|---|---|---|
| timeout | Ganzzahl | Zeitüberschreitungswert, der festgelegt werden soll. Einheit: Millisekunden |
| Typ | Beschreibung |
|---|---|
| void |
Dieses Beispiel zeigt, wie der Zeitüberschreitungswert für einen Endpunktaufruf mit der setTimeout()- Methode festgelegt wird.
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());
Ausgabe
200
GlideHTTPRequest – setLogLevel(String logLevel)
Legt die Protokollebene für eine HTTP-Anforderung fest.
| Name | Typ | Beschreibung |
|---|---|---|
| logLevel | Zeichenfolge | Die verfügbare Protokollierungsebene. Hinweis: Aus Leistungsgründen wird empfohlen, die HTTP-Anforderungsprotokollierung in der Produktion auf basiczu belassen. Gültige Werte:
Standard: einfach |
| Typ | Beschreibung |
|---|---|
| void |
Dieses Beispiel zeigt, wie die Protokollebene für einen Endpunktaufruf mit der setLogLevel()- Methode festgelegt wird.
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());
Ausgabe
200
GlideHTTPRequest – setupProxy(String host, String port)
Legt den Proxy-Host und den Port für den zugeordneten REST-Aufruf fest.
| Name | Typ | Beschreibung |
|---|---|---|
| host | Zeichenfolge | Proxy-Host |
| port | Zeichenfolge | Proxy-Port |
| Typ | Beschreibung |
|---|---|
| void |