limit number of open sockets axios

Solutions on MaxInterview for limit number of open sockets axios by the best coders in the world

showing results for - "limit number of open sockets axios"
Lettie
24 Jun 2019
1import axios from 'axios'
2
3const MAX_REQUESTS_COUNT = 5
4const INTERVAL_MS = 10
5let PENDING_REQUESTS = 0
6
7// create new axios instance
8const api = axios.create({})
9
10/**
11 * Axios Request Interceptor
12 */
13api.interceptors.request.use(function (config) {
14  return new Promise((resolve, reject) => {
15    let interval = setInterval(() => {
16      if (PENDING_REQUESTS < MAX_REQUESTS_COUNT) {
17        PENDING_REQUESTS++
18        clearInterval(interval)
19        resolve(config)
20      }
21    }, INTERVAL_MS)
22    })
23})
24
25/**
26 * Axios Response Interceptor
27 */
28api.interceptors.response.use(
29  function (response) {
30    PENDING_REQUESTS = Math.max(0, PENDING_REQUESTS - 1)
31    return Promise.resolve(response)
32  },
33  function (error) {
34    PENDING_REQUESTS = Math.max(0, PENDING_REQUESTS - 1)
35    return Promise.reject(error)
36  })
37
38export default api
similar questions
queries leading to this page
limit number of open sockets axios