我正在尝试实现cancelToken API,以便每当我向服务器发出请求以获取每个按键时的结果时,仅应处理最后一个请求,但是我已经实现了axios cancel token API,看来取消每个请求,我在这里做错了什么?每次击键都会调用此功能。
Dask.DataFrame
答案 0 :(得分:3)
您应在 之前取消先前的cancelToken,再进行新的axios调用。首次请求时,请保存cancelToken。然后,当您发出第二个请求时,检查是否已经有一个cancelToken并取消它,然后进行第二次axios调用。
最好对getProductLists2进行反跳以限制呼叫率
这是我的方法:
// Cancel the previous axios token if any
if (this.cancel) this.cancel.cancel();
// Get a new token
this.cancel = axios.CancelToken.source();
axios
.get(myURL, { cancelToken: this.cancel.token })
.then((res) => {
console.log(res.data);
})
.catch((error) => { console.log(error); });