Optional
afterCallback that will be invoked when the server response has been received and processed or when the request has been failed without a response.
The originating request will be available as the request
property
on either the error or response object.
Error encountered when handling this request or null
.
Optional
res: ArangojsResponseResponse object for this request, if no error occurred.
Optional
arangoNumeric representation of the ArangoDB version the driver should expect.
The format is defined as XYYZZ
where X
is the major version, Y
is
the zero-filled two-digit minor version and Z
is the zero-filled two-digit
bugfix version, e.g. 30102
for 3.1.2, 20811
for 2.8.11.
Depending on this value certain methods may become unavailable or change their behavior to remain compatible with different versions of ArangoDB.
Default: 31100
Optional
auth?: BasicAuthCredentials | BearerAuthCredentialsCredentials to use for authentication.
See also database.Database#useBasicAuth and database.Database#useBearerAuth.
Default: { username: "root", password: "" }
Optional
beforeCallback that will be invoked with the finished request object before it is finalized. In the browser the request may already have been sent.
Request object or XHR instance used for this request.
Optional
credentials?: "omit" | "include" | "same-origin"(Browser only.) Determines whether credentials (e.g. cookies) will be sent with requests to the ArangoDB server.
If set to same-origin
, credentials will only be included with requests
on the same URL origin as the invoking script. If set to include
,
credentials will always be sent. If set to omit
, credentials will be
excluded from all requests.
Default: same-origin
Optional
databaseName of the database to use.
Default: "_system"
Optional
headers?: Headers | Record<string, string>An object with additional headers to send with every request.
If an "authorization"
header is provided, it will be overridden when
using database.Database#useBasicAuth, database.Database#useBearerAuth or
the auth
configuration option.
Optional
keepalive?: booleanIf set to true
, requests will keep the underlying connection open until
it times out or is closed. In browsers this prevents requests from being
cancelled when the user navigates away from the page.
Default: true
Optional
loadDetermines the behavior when multiple URLs are provided:
"NONE"
: No load balancing. All requests will be handled by the first
URL in the list until a network error is encountered. On network error,
arangojs will advance to using the next URL in the list.
"ONE_RANDOM"
: Randomly picks one URL from the list initially, then
behaves like "NONE"
.
"ROUND_ROBIN"
: Every sequential request uses the next URL in the list.
Default: "NONE"
Optional
maxDetermines the behavior when a request fails because the underlying
connection to the server could not be opened
(i.e. ECONNREFUSED
in Node.js):
false
: the request fails immediately.
0
: the request is retried until a server can be reached but only a
total number of times matching the number of known servers (including
the initial failed request).
any other number: the request is retried until a server can be reached
or the request has been retried a total of maxRetries
number of times
(not including the initial failed request).
When working with a single server, the retries (if any) will be made to the same server.
This setting currently has no effect when using arangojs in a browser.
Note: Requests bound to a specific server (e.g. fetching query results) will never be retried automatically and ignore this setting.
Note: To set the number of retries when a write-write conflict is
encountered, see retryOnConflict
instead.
Default: 0
Optional
poolMaximum number of parallel requests arangojs will perform. If any additional requests are attempted, they will be enqueued until one of the active requests has completed.
Note: when using ROUND_ROBIN
load balancing and passing an array of
URLs in the url
option, the default value of this option will be set to
3 * url.length
instead of 3
.
Default: 3
Optional
precaptureIf set to true
, arangojs will generate stack traces every time a request
is initiated and augment the stack traces of any errors it generates.
Warning: This will cause arangojs to generate stack traces in advance even if the request does not result in an error. Generating stack traces may negatively impact performance.
Optional
responseLimits the number of values of server-reported response queue times that will be stored and accessible using database.Database#queueTime. If set to a finite value, older values will be discarded to make room for new values when that limit is reached.
Default: 10
Optional
retryIf set to a positive number, requests will automatically be retried at most this many times if they result in a write-write conflict.
Default: 0
Optional
url?: string | string[]Base URL of the ArangoDB server or list of server URLs.
When working with a cluster, the method database.Database#acquireHostList can be used to automatically pick up additional coordinators/followers at any point.
When running ArangoDB on a unix socket, e.g. /tmp/arangodb.sock
, the
following URL formats are supported for unix sockets:
unix:///tmp/arangodb.sock
(no SSL)http+unix:///tmp/arangodb.sock
(or https+unix://
for SSL)http://unix:/tmp/arangodb.sock
(or https://unix:
for SSL)Additionally ssl
and tls
are treated as synonymous with https
and
tcp
is treated as synonymous with http
, so the following URLs are
considered identical:
tcp://127.0.0.1:8529
and http://127.0.0.1:8529
ssl://127.0.0.1:8529
and https://127.0.0.1:8529
tcp+unix:///tmp/arangodb.sock
and http+unix:///tmp/arangodb.sock
ssl+unix:///tmp/arangodb.sock
and https+unix:///tmp/arangodb.sock
tcp://unix:/tmp/arangodb.sock
and http://unix:/tmp/arangodb.sock
ssl://unix:/tmp/arangodb.sock
and https://unix:/tmp/arangodb.sock
See also auth
for passing authentication credentials.
Default: "http://127.0.0.1:8529"
Options for configuring arangojs.