Skip to content

Instantly share code, notes, and snippets.

@ccnokes
Created July 6, 2017 16:23
Show Gist options
  • Save ccnokes/94576dc38225936a3ca892b989c9d0c6 to your computer and use it in GitHub Desktop.
Save ccnokes/94576dc38225936a3ca892b989c9d0c6 to your computer and use it in GitHub Desktop.
Good default configuration for axios in node.js
const axios = require('axios');
const http = require('http');
const https = require('https');
module.exports = axios.create({
//60 sec timeout
timeout: 60000,
//keepAlive pools and reuses TCP connections, so it's faster
httpAgent: new http.Agent({ keepAlive: true }),
httpsAgent: new https.Agent({ keepAlive: true }),
//follow up to 10 HTTP 3xx redirects
maxRedirects: 10,
//cap the maximum content length we'll accept to 50MBs, just in case
maxContentLength: 50 * 1000 * 1000
});
//optionally add interceptors here...
@howiezhao
Copy link

howiezhao commented Apr 11, 2025

Please note that since Node.js 19.0.0, http.globalAgent enables keepAlive by default, which means that in Axios, when no httpAgent parameter is passed, keepAlive is also enabled by default.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment