@rqt/aqt
aqt
is a network request package for Node.js that returns the body (parsed if returned as JSON), headers and status after gzip decompression when necessary.
yarn add -E @rqt/aqt
Table Of Contents
API
The package exports the main default asynchronous function to make requests.
import aqt from '@rqt/aqt'
aqt(
url: string,
options?: AqtOptions,
): AqtReturn
Makes a request to the URL, either with or without options.
import('http').OutgoingHttpHeaders
http.OutgoingHttpHeaders
AqtOptions
: Configuration for requests.
Name | Type | Description | Default |
---|
data | Object | Optional data to send to the server with the request. | - |
type | ('form' | 'json') | How to send data: json to serialise JSON data and form for url-encoded transmission with json mode by default. | 'json' |
headers | http.OutgoingHttpHeaders | Headers to use for the request. | - |
compress | boolean | Add the Accept-Encoding: gzip, deflate header to indicate to the server that it can send a compressed response. | true |
timeout | number | The timeout after which the request should fail. | - |
method | string | What HTTP method to use in making of the request. When no method is given and data is present, defaults to POST . | - |
binary | boolean | Whether to return a buffer instead of a string. | false |
justHeaders | boolean | Whether to stop the request after response headers were received, without waiting for the data. | false |
import aqt from '@rqt/aqt'
const Request = async (url) => {
const res = await aqt(url)
const resp = JSON.stringify(res, null, 2)
console.log(resp)
}
{
"body": "Hello World",
"headers": {
"content-type": "text/plain",
"date": "Wed, 03 Jul 2019 15:34:47 GMT",
"connection": "close",
"transfer-encoding": "chunked"
},
"statusCode": 200,
"statusMessage": "OK"
}
AqtReturn
Type
The result of the aqt
function will have the following structure:
Property | Type | Description | Example |
---|
body | string|object|Buffer | The return from the server. In case json content-type was set by the server, the response will be parsed into an object. If binary option was used for the request, a Buffer will be returned. Otherwise, a string response is returned. |
headers | object | Incoming headers returned by the server. |
|
headers example
{
"server": "GitHub.com",
"date": "Wed, 18 Jul 2018 01:32:47 GMT",
"content-type": "application/json; charset=utf-8",
"content-length": "2",
"connection": "close",
"status": "200 OK",
"x-ratelimit-limit": "60",
"x-ratelimit-remaining": "59",
"x-ratelimit-reset": "1531881167",
"cache-control": "public, max-age=60, s-maxage=60",
"vary": "Accept",
"etag": "\"d751713988987e9331980363e24189ce\"",
"x-github-media-type": "github.v3; format=json",
"access-control-allow-origin": "*",
"x-frame-options": "deny",
"x-content-type-options": "nosniff",
"x-xss-protection": "1; mode=block",
"content-security-policy": "default-src 'none'",
"x-runtime-rack": "0.018822",
"x-github-request-id": "F187:785E:65A1E8A:C2A36B5:5B4E98BF"
}
|
statusCode | number | The status code returned by the server. | 200 |
statusMessage | string | The status message set by the server. | OK |
Copyright