Class HTTPService

Represents an HTTP Service.

The HTTP Service will use the return value of the createRequest callback as the request body (if supported by the HTTP method). If this is an array of non-null HTTPRequestPart objects, then a multi-part request will be formed. Otherwise the object is converted to a String and used.

See also XML.toXMLString() and JSON.stringify(Object), which must be explicitly called if needed.

All Known Subclasses 

HTTPFormService

Property Summary 

PropertyDescription
authentication: StringReturns the authentication type.
cachingTTL: NumberReturns the caching time to live value.
client: HTTPClient (read-only)Returns the underlying HTTP client object.
encoding: StringReturns the request body encoding to declare.
hostNameVerification: BooleanDetermines whether host name verification is enabled.
identity: KeyRefGets the identity used for mutual TLS (mTLS).
outFile: FileReturns the output file, or null if there is none.
requestMethod: StringReturns the request method.

Constructor Summary 

This class does not have a constructor, so you cannot create it directly.

Method Summary 

MethodDescription
addHeader(String, String)Adds an HTTP Header.
addParam(String, String)Adds a query parameter that will be appended to the URL.
getAuthentication()Returns the authentication type.
getCachingTTL()Returns the caching time to live value.
getClient()Returns the underlying HTTP client object.
getEncoding()Returns the request body encoding to declare.
getHostNameVerification()Determines whether host name verification is enabled.
getIdentity()Gets the identity used for mutual TLS (mTLS).
getOutFile()Returns the output file, or null if there is none.
getRequestMethod()Returns the request method.
setAuthentication(String)Sets the type of authentication.
setCachingTTL(Number)Enables caching for GET requests.
setEncoding(String)Sets the encoding of the request body (if any).
setHostNameVerification(Boolean)Sets whether certificate host name verification is enabled.
setIdentity(KeyRef)Sets the identity (private key) to use when mutual TLS (mTLS) is configured.
setOutFile(File)Sets the output file in which to write the HTTP response body.
setRequestMethod(String)Sets the HTTP request method.

Methods inherited from class Service 

call, getConfiguration, getCredentialID, getRequestData, getResponse, getURL, isMock, isThrowOnError, setCredentialID, setMock, setThrowOnError, setURL

Methods inherited from class Object 

assign, create, create, defineProperties, defineProperty, entries, freeze, fromEntries, getOwnPropertyDescriptor, getOwnPropertyNames, getOwnPropertySymbols, getPrototypeOf, hasOwnProperty, is, isExtensible, isFrozen, isPrototypeOf, isSealed, keys, preventExtensions, propertyIsEnumerable, seal, setPrototypeOf, toLocaleString, toString, valueOf, values

Property Details 

authentication 

authentication: String

Returns the authentication type.


cachingTTL 

cachingTTL: Number

Returns the caching time to live value.

See Also:


client 

client: HTTPClient (read-only)

Returns the underlying HTTP client object.


encoding 

encoding: String

Returns the request body encoding to declare.


hostNameVerification 

hostNameVerification: Boolean

Determines whether host name verification is enabled.


identity 

identity: KeyRef

Gets the identity used for mutual TLS (mTLS).


outFile 

outFile: File

Returns the output file, or null if there is none.


requestMethod 

requestMethod: String

Returns the request method.


Method Details 

addHeader(String, String) 

addHeader(name: String, val: String): HTTPService

Adds an HTTP Header.

Parameters:

  • name - Header name.
  • val - Header value.

Returns:

  • this HTTP Service.

addParam(String, String) 

addParam(name: String, val: String): HTTPService

Adds a query parameter that will be appended to the URL.

Parameters:

  • name - Parameter name.
  • val - Parameter value.

Returns:

  • this HTTP Service.

getAuthentication() 

getAuthentication(): String

Returns the authentication type.

Returns:

  • Authentication type.

getCachingTTL() 

getCachingTTL(): Number

Returns the caching time to live value.

Returns:

  • The caching time to live value in seconds.

See Also:


getClient() 

getClient(): HTTPClient

Returns the underlying HTTP client object.

Returns:

  • HTTP client object.

getEncoding() 

getEncoding(): String

Returns the request body encoding to declare.

Returns:

  • Request encoding.

getHostNameVerification() 

getHostNameVerification(): Boolean

Determines whether host name verification is enabled.

Returns:

  • true if verification is enabled, false otherwise

getIdentity() 

getIdentity(): KeyRef

Gets the identity used for mutual TLS (mTLS).

Returns:

  • Reference to the private key, or null if not configured

getOutFile() 

getOutFile(): File

Returns the output file, or null if there is none.

Returns:

  • Output file or null.

getRequestMethod() 

getRequestMethod(): String

Returns the request method.

Returns:

  • HTTP Request method.

setAuthentication(String) 

setAuthentication(authentication: String): HTTPService

Sets the type of authentication. Valid values include "BASIC" and "NONE".

The default value is BASIC.

Parameters:

  • authentication - Type of authentication.

Returns:

  • this HTTP Service.

setCachingTTL(Number) 

setCachingTTL(ttl: Number): HTTPService

Enables caching for GET requests.

This only caches status codes 2xx with a content length and size of less than 50k that are not immediately written to file. The URL and the user name are used as cache keys. The total size of cacheable content and the number of cached items is limited and automatically managed by the system.

Cache control information sent by the remote server is ignored.

Caching HTTP responses should be done very carefully. It is important to ensure that the response really depends only on the URL and doesn't contain any remote state information or time information which is independent of the URL. It is also important to verify that the application sends exactly the same URL multiple times.

Parameters:

  • ttl - The time to live for the cached content in seconds. A value of 0 disables caching.

See Also:


setEncoding(String) 

setEncoding(encoding: String): HTTPService

Sets the encoding of the request body (if any).

The default value is UTF-8.

Parameters:

  • encoding - Encoding of the request body.

Returns:

  • this HTTP Service.

setHostNameVerification(Boolean) 

setHostNameVerification(enable: Boolean): HTTPService

Sets whether certificate host name verification is enabled. The default value is true. Set it to false to disable host name verification.

Parameters:

  • enable - true to enable host name verification or false to disable it.

Returns:

  • this HTTP Service.

setIdentity(KeyRef) 

setIdentity(keyRef: KeyRef): HTTPService

Sets the identity (private key) to use when mutual TLS (mTLS) is configured.

If this is not set and mTLS is used then the private key will be chosen from the key store based on the host name. If this is set to a reference named "__NONE__" then no private key will be used even if one is requested by the remote server.

Parameters:

  • keyRef - Reference to the private key

setOutFile(File) 

setOutFile(outFile: File): HTTPService

Sets the output file in which to write the HTTP response body.

The default behavior is to not write a file.

Parameters:

  • outFile - Output file, or null to disable.

Returns:

  • this HTTP Service.

setRequestMethod(String) 

setRequestMethod(requestMethod: String): HTTPService

Sets the HTTP request method.

Valid values include GET, PUT, POST, and DELETE.

The default value is POST.

Parameters:

  • requestMethod - HTTP request method.

Returns:

  • this HTTP Service.