0.0.7 • Published 1 month ago

@igorjacauna/axios-dev-proxy v0.0.7

Weekly downloads
-
License
MIT
Repository
github
Last release
1 month ago

axios-dev-proxy

Simple proxy to mock request for easy development of frontend with axios.

Usage

Install package:

# npm
npm install -D axios-dev-proxy

# yarn
yarn add -D axios-dev-proxy

# pnpm
pnpm install -D axios-dev-proxy

Import:

// ESM
import { defineProxy } from "axios-dev-proxy";

// CommonJS
const { defineProxy } = require("axios-dev-proxy");

const proxy = defineProxy(axiosInstance);

// Simple use
proxy.onGet('/path-to-mock').reply(200, {
  xpto: 'data to response'
});

// Use a function to return array like [status, response]
proxy.onGet('/path-to-mock').reply(200, () => {
  return [200, { xpto: 'data to response' }]
});

// To mock only once, next requests will not be mocked
proxy.onGet('/path-to-mock-once').replyOnce(200, {
  xpto: 'data to response once'
});

// To mock for specific route with specific params
// Get /path-to-mock?q="value"
proxy.onGet('/path-to-mock', { q: 'value' }).reply(200, {
  xpto: 'data to response once'
});

// Can change the AxiosRequestConfig
proxy.onGet('/path-to-request').changeRequest((requestConfig) => {
  requestConfig.baseURL = 'http://another.api';
  return requestConfig;
});

// Or just want to see the response change the AxiosRequestConfig
proxy.onGet('/path-to-request').printResponse();

// You can chain
proxy.onGet('/path')
  // Change the base URL for '/path' requests
  .changeRequest((requestConfig) => {
    requestConfig.baseURL = 'http://another.api';
    return requestConfig;
  })
  // Print the response for '/path' requests
  .printResponse()
  // On first '/another-path' request only
  .onGet('/another-path')
  // Reply once with
  .replyOnce({
    xpto: 'lorem ipsum'
  });

Development

  • Clone this repository
  • Install latest LTS version of Node.js
  • Enable Corepack using corepack enable
  • Install dependencies using yarn install
  • Run interactive tests using yarn dev

License

Made with 💛

Published under MIT License.

0.0.7

1 month ago

0.0.6

8 months ago

0.0.4

8 months ago

0.0.3

9 months ago

0.0.2

9 months ago

0.0.1

9 months ago