_section: Web Utilities @ _property: ethers.utils.fetchJson(urlOrConnectionInfo [, json [ , processFunc ] ]) => Promise @ 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 @ Repeatedly call pollFunc using the [[PollOptions]] until it returns a value other than undefined. _heading: 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 => boolean How many times to retry in the event of a 429 status code. _property: connection.throttleSlotInterval => boolean The exponential back-off slot delay (i.e. omega), creating a staggered, increasing random delay on retries. _property: connection.throttleCallback => boolean Callback that allows application level hints to retry (within the throttleLimit) or quick fail. _heading: 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.