JSPM

  • Created
  • Published
  • Downloads 325237
  • Score
    100M100P100Q183810F
  • License MIT

Add tough-cookie support to axios.

Package Exports

  • axios-cookiejar-support
  • axios-cookiejar-support/lib/index
  • axios-cookiejar-support/noop.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (axios-cookiejar-support) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

axios-cookiejar-support

Add tough-cookie support to axios.


NPM LICENSE CircleCI

dependencies peerdependencies devdependencies

Install

$ npm i axios tough-cookie axios-cookiejar-support

-- OR --

$ npm i axios tough-cookie @3846masa/axios-cookiejar-support # Same as above

TypeScript

If you want to use it with TypeScript, add @types/tough-cookie.

npm i @types/tough-cookie

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

  // Silently ignore things like parse cookie errors and invalid domains.
  // See also https://github.com/salesforce/tough-cookie
  ignoreCookieErrors: false // 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

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request

LICENSE

MIT License

Author

3846masa icon 3846masa


Paypal.me (Onetime donate)