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 einen Header hinzu.
| Name | Typ | Beschreibung |
|---|---|---|
| Name | Zeichenfolge | Headername, z. B. „Akzeptieren“ oder „Inhaltstyp“. |
| Wert | Zeichenfolge | Headerwert, z. B. application/json. |
| Typ | Beschreibung |
|---|---|
| void |
In diesem Beispiel wird der Anforderungsheader „Akzeptieren“ hinzugefügt, und die Anzahl der Incidents wird aus einer ServiceNow-Instanz zurückgegeben, 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 |
In diesem Beispiel wird gezeigt, wie dem REST-Endpunktaufruf der Parameter sysparm_limit hinzugefügt wird, 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 Anwendernamen und ein Passwort für die Standardauthentifizierung fest.
| Name | Typ | Beschreibung |
|---|---|---|
| userName | Zeichenfolge | Anwendername für die Authentifizierung. |
| Kennwort | Zeichenfolge | Für die Authentifizierung zu verwendendes Passwort des Anwenders. |
| Typ | Beschreibung |
|---|---|
| void |
In diesem Beispiel wird gezeigt, wie Sie mit der Methode setBasicAuth() den Anwendernamen und das Passwort für den zugehörigen 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 den Inhaltstyp-Header 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 Inhaltstyp finden Sie unter https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Type. |
| Typ | Beschreibung |
|---|---|
| void |
In diesem Beispiel wird gezeigt, wie der Inhaltstyp- Anforderungsheader für einen REST-Endpunktaufruf mithilfe der Methode „setContentType() “ 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 „Weiterleitung verfolgen“ für einen REST-Endpunktaufruf.
Weitere Informationen zu HTTP-Umleitungen 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 |
In diesem Beispiel wird gezeigt, wie Umleitungen für einen Endpunktaufruf mit der Methode „setFollowRedirect() “ 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 | Festzulegender Zeitüberschreitungswert. Einheit: Millisekunden |
| Typ | Beschreibung |
|---|---|
| void |
In diesem Beispiel wird gezeigt, wie der Zeitüberschreitungswert für einen Endpunktaufruf mit der Methode setTimeout() 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 in der Produktion empfohlen, die HTTP-Anforderungsprotokollierung bei basiczu belassen. Gültige Werte:
Standard: einfach |
| Typ | Beschreibung |
|---|---|
| void |
In diesem Beispiel wird gezeigt, wie die Protokollebene für einen Endpunktaufruf mit der Methode setLogLevel() 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 -Port für den zugehörigen REST-Aufruf fest.
| Name | Typ | Beschreibung |
|---|---|---|
| host | Zeichenfolge | Proxy-Host |
| port | Zeichenfolge | Proxy-Port |
| Typ | Beschreibung |
|---|---|
| void |