Compare commits

...

2 Commits

Author SHA1 Message Date
376225888c 1.1.20 2019-08-21 12:55:20 +02:00
63e8660f6c fix(core): update 2019-08-21 12:55:19 +02:00
3 changed files with 15 additions and 2 deletions

2
package-lock.json generated
View File

@ -1,6 +1,6 @@
{ {
"name": "@pushrocks/smartrequest", "name": "@pushrocks/smartrequest",
"version": "1.1.19", "version": "1.1.20",
"lockfileVersion": 1, "lockfileVersion": 1,
"requires": true, "requires": true,
"dependencies": { "dependencies": {

View File

@ -1,6 +1,6 @@
{ {
"name": "@pushrocks/smartrequest", "name": "@pushrocks/smartrequest",
"version": "1.1.19", "version": "1.1.20",
"private": false, "private": false,
"description": "dropin replacement for request", "description": "dropin replacement for request",
"main": "dist/index.js", "main": "dist/index.js",

View File

@ -55,6 +55,16 @@ const parseSocketPathAndRoute = (stringToParseArg: string) => {
}; };
}; };
const httpAgent = new plugins.http.Agent({
keepAlive: true,
keepAliveMsecs: 600000
});
const httpsAgent = new plugins.https.Agent({
keepAlive: true,
keepAliveMsecs: 600000
});
export let request = async ( export let request = async (
domainArg: string, domainArg: string,
optionsArg: interfaces.ISmartRequestOptions = {}, optionsArg: interfaces.ISmartRequestOptions = {},
@ -64,6 +74,7 @@ export let request = async (
// merge options // merge options
const defaultOptions: interfaces.ISmartRequestOptions = { const defaultOptions: interfaces.ISmartRequestOptions = {
// agent: agent,
autoJsonParse: true autoJsonParse: true
}; };
@ -93,8 +104,10 @@ export let request = async (
// lets determine the request module to use // lets determine the request module to use
const requestModule = (() => { const requestModule = (() => {
if (parsedUrl.protocol === 'https:') { if (parsedUrl.protocol === 'https:') {
optionsArg.agent = httpsAgent;
return plugins.https; return plugins.https;
} else if (parsedUrl.protocol === 'http:') { } else if (parsedUrl.protocol === 'http:') {
optionsArg.agent = httpAgent;
return plugins.http; return plugins.http;
} else { } else {
throw new Error(`unsupported protocol: ${parsedUrl.protocol}`); throw new Error(`unsupported protocol: ${parsedUrl.protocol}`);