axios-cookiejar-support
Add tough-cookie support to axios.
Install
$ npm i axios axios-cookiejar-support
-- OR --
$ npm i axios @3846masa/axios-cookiejar-support # Same as above
Usage
const axios = require('axios').default;
const axiosCookieJarSupport = require('axios-cookiejar-support').default;
const tough = require('tough-cookie');
axiosCookieJarSupport(axios);
const cookieJar = new tough.CookieJar();
axios
  .get('https://google.com', {
    jar: cookieJar, // tough.CookieJar or boolean
    withCredentials: true, // If true, send cookie stored in jar
  })
  .then(() => {
    console.log(cookieJar);
  });
See examples.
Notice: Set default cookiejar
axios@>=0.19.0 cannot assign defaults.jar via axios.create() before wrapping instance.
When you want to set defaults.jar, please set directly after wrapping instance.
const axios = require('axios').default;
const axiosCookieJarSupport = require('axios-cookiejar-support').default;
const tough = require('tough-cookie');
const instance = axios.create({
  // WARNING: This value will be ignored.
  jar: new tough.CookieJar(),
});
// Set directly after wrapping instance.
axiosCookieJarSupport(instance);
instance.defaults.jar = new tough.CookieJar();
Extended Request Config
c.f.) https://github.com/mzabriskie/axios#request-config
{
  // `jar` is tough.CookieJar instance or boolean.
  // If true, axios create CookieJar automatically.
  jar: undefined, // default
  // **IMPORTANT**
  // If false, axios DONOT send cookies from cookiejar.
  withCredentials: false // default
}
Browser
Running on browser, this library becomes noop (config.jar might be ignored).
Contribution
- Fork it
 - Create your feature branch (
git checkout -b my-new-feature) - Commit your changes (
git commit -am 'Add some feature') - Push to the branch (
git push origin my-new-feature) - Create new Pull Request
 
LICENSE
Author
Donate
Paypal.me (Onetime donate)