Batch multiple HTTP requests together, to issue them in parallel over multiple TCP connections.
|requests||array | object||An array or object containing requests, in string or object form|
When each request is specified as an array, the order of the arguments for each request is as follows:
|1||method||string||Mandatory. The HTTP method of the request. One of GET, POST, PUT, PATCH, DELETE, HEAD or OPTION.|
|2||url||string / HTTP URL||Mandatory. The URL to request.|
|3||body (optional)||string / object / ArrayBuffer||The body of the request if relevant. Can be set to null if not applicable but you want to set the last params argument.|
|4||params (optional)||object||Params like auth, custom headers and tags.|
|object||The returned object contains Response objects.|
It is an array when users pass an array as requests and is an ordinary object with string keys when named requests are used (see below).
You can also use objects to hold information about a request. Here's an example of a POST request in an object. It also uses the Params object to add custom HTTP headers to the request:
Note that the requests in the example above may happen in any order, or simultaneously. When running requests in batches, there is no guarantee that e.g. req1 will happen before req2 or req3
Finally, you can also send in named requests by using an object instead of an array as the parameter to http.batch(). In the following example we do this, and we also show that it is possible to mix string URLs and request objects