GlideHTTPRequest - Global

  • リリースバージョン: Australia
  • 更新日 2026年03月12日
  • 所要時間:16分
  • The GlideHTTPRequest API provides utility methods to perform common functions with Glide HTTP requests.

    You can use this API in global server-side scripts. To use this class, instantiate a GlideHTTPRequest object using the constructor. The constructor requires an endpoint URL as an input parameter.

    GlideHTTPRequest - addHeader(String name, String value)

    Adds a header to your HTTP request.

    表 : 1. Parameters
    Name Type Description
    name String Header name, such as Accept or Content-Type.
    value String Header value, such as application/json.
    表 : 2. Returns
    Type Description
    void

    This example adds the request header "Accept" and returns the number of the incidents from a ServiceNow Instance, parsing the JSON or XML responses.

    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);

    Output

    200
    (JSON) Incidents returned: 66
    200
    (XML) Incidents returned: 66

    GlideHTTPRequest - addParameter(String name, String value)

    Adds a parameter to your HTTP request.

    表 : 3. Parameters
    Name Type Description
    name String Parameter to add, such as sysparm_limit.
    value String Value for the parameter.
    表 : 4. Returns
    Type Description
    void

    This example shows how to add the sysparm_limit parameter to the REST endpoint call to limit the number of returned responses.

    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);

    Output:

    200
    Incidents returned: 1

    GlideHTTPRequest - setBasicAuth(String userName, String password)

    Sets a user name and password for basic authentication.

    表 : 5. Parameters
    Name Type Description
    userName String User name to use for authentication.
    password String User's password to use for authentication.
    表 : 6. Returns
    Type Description
    void

    This example shows how to use the setBasicAuth() method to set the user name and password for the associated REST endpoint call.

    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);

    Output

    200
    (JSON) Incidents returned: 66
    200
    (XML) Incidents returned: 66

    GlideHTTPRequest - setContentType(String type)

    Sets the Content-Type header for your HTTP request to the specified value.

    表 : 7. Parameters
    Name Type Description
    type String Content type to set, such as application/json or multipart/form-data. For additional information on Content-Type, see https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Type.
    表 : 8. Returns
    Type Description
    void

    This example shows how to set the Content-Type request header for a REST endpoint call using the setContentType() method.

    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());

    Output

    200
    

    GlideHTTPRequest - setFollowRedirect(boolean followRedirect)

    Enables or disables the follow redirect option for a REST endpoint call.

    For additional information on HTTP redirects, see https://developer.mozilla.org/en-US/docs/Web/HTTP/Redirections.

    表 : 9. Parameters
    Name Type Description
    followRedirect Boolean Flag that indicates whether the endpoint should follow any URL redirect returned by the endpoint.
    Valid values:
    • true: Following any returned redirect.
    • false: Ignore any returned redirect.
    Default: true
    表 : 10. Returns
    Type Description
    void

    This example shows how to turn off redirects for an endpoint call using the setFollowRedirect() method.

    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());

    Output

    200

    GlideHTTPRequest - setHttpTimeout(int timeout)

    Sets the HTTP timeout value in milliseconds.

    表 : 11. Parameters
    Name Type Description
    timeout Integer Timeout value to set.

    Unit: Milliseconds

    表 : 12. Returns
    Type Description
    void

    This example shows how to set the time out value for an endpoint call using the setTimeout() method.

    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());

    Output

    200

    GlideHTTPRequest - setLogLevel(String logLevel)

    Sets the log level for an HTTP request.

    表 : 13. Parameters
    Name Type Description
    logLevel String The level of logging available.
    注:
    For performance reasons, in production it is advisable to leave HTTP request logging at basic.

    Valid values:

    • basic: Covers many of the attributes of the HTTP transaction including host, path, response status, and so on.
    • elevated: Includes all of basic, as well as all request headers, the query string, and all response headers.
    • all: Includes all of elevated, as well as the request body and the response body.

    Default: basic

    表 : 14. Returns
    Type Description
    void

    This example shows how to set the log level for an endpoint call using the setLogLevel() method.

    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());

    Output

    200

    GlideHTTPRequest - setupProxy(String host, String port)

    Sets the proxy host and port for the associated REST call.

    表 : 15. Parameters
    Name Type Description
    host String Proxy host
    port String Proxy port
    表 : 16. Returns
    Type Description
    void