93 lines
3.3 KiB
Plaintext
93 lines
3.3 KiB
Plaintext
_section: Web Utilities @<web>
|
|
|
|
|
|
_property: ethers.utils.fetchJson(urlOrConnectionInfo [, json [ , processFunc ] ]) => Promise<any> @<utils-fetchJson>
|
|
Fetch and parse the JSON content from //urlOrConnectionInfo//, with the
|
|
optional body //json// and optionally processing the result with //processFun//
|
|
before returning it.
|
|
|
|
_property: ethers.utils.poll(pollFunc [, options ]) => Promise<any> @<utils-poll>
|
|
Repeatedly call pollFunc using the [[PollOptions]] until it returns a
|
|
value other than undefined.
|
|
|
|
|
|
_heading: ConnectionInfo @<ConnectionInfo>
|
|
|
|
_property: connection.url => string
|
|
The URL to connect to.
|
|
|
|
_property: connection.user => string
|
|
The username to use for [[link-wiki-basicauth]].
|
|
The default is null (i.e. do not use basic authentication)
|
|
|
|
_property: connection.password => string
|
|
The password to use for [[link-wiki-basicauth]].
|
|
The default is null (i.e. do not use basic authentication)
|
|
|
|
_property: connection.allowInsecureAuthentication => boolean
|
|
Allow [[link-wiki-basicauth]] over non-secure HTTP. The default is false.
|
|
|
|
_property: connection.timeout => number
|
|
How long to wait (in ms) before rejecting with a //timeout// error. (default: ``120000``).
|
|
|
|
_property: connection.headers => { [ key: string]: string }
|
|
Additional headers to include in the connection.
|
|
|
|
_property: connection.skipFetchSetup => boolean
|
|
Normally a connection will specify the default values for a connection
|
|
such as CORS-behavior and caching policy, to ensure compatibility across
|
|
platforms. On some services, such as Cloudflare Workers, specifying any
|
|
value (inclluding the default values) will cause failure. Setting this
|
|
to true will prevent any values being passed to the underlying API.
|
|
|
|
_property: connection.errorPassThrough => boolean
|
|
If false, any server error is thrown as a SERVER_ERROR, otherwise a
|
|
the processFunc is called with response including the error status intact. (default: ``false``)
|
|
|
|
_property: connection.allowGzip => boolean
|
|
Allow Gzip responses. (default: ``false``)
|
|
|
|
_property: connection.throttleLimit => number
|
|
How many times to retry in the event of a 429 status code.
|
|
|
|
_property: connection.throttleSlotInterval => number
|
|
The exponential back-off slot delay (i.e. omega), creating a staggered, increasing random delay on retries.
|
|
|
|
_property: connection.throttleCallback => Promise<boolean>
|
|
Callback that allows application level hints to retry (within the throttleLimit) or quick fail.
|
|
|
|
|
|
_heading: PollOptions @<PollOptions>
|
|
|
|
_property: options.timeout => number
|
|
The amount of time (in ms) allowed to elapse before triggering a timeout
|
|
error.
|
|
|
|
_property: options.floor => number
|
|
The minimum time limit to allow for [[link-wiki-backoff]].
|
|
|
|
The default is 0s.
|
|
|
|
_property: options.ceiling => number
|
|
The maximum time limit to allow for [[link-wiki-backoff]].
|
|
|
|
The default is 10s.
|
|
|
|
_property: options.interval => number
|
|
The interval used during [[link-wiki-backoff]] calculation.
|
|
|
|
The default is 250ms.
|
|
|
|
_property: options.retryLimit => number
|
|
The number of times to retry in the event of an error or //undefined// is
|
|
returned.
|
|
|
|
_property: options.onceBlock => [[Provider]]
|
|
If this is specified, the polling will wait on new blocks from
|
|
//provider// before attempting the //pollFunc// again.
|
|
|
|
_property: options.oncePoll => [[Provider]]
|
|
If this is specified, the polling will occur on each poll
|
|
cycle of //provider// before attempting the //pollFunc//
|
|
again.
|