how to cancel an axios call after some specific time
up vote
0
down vote
favorite
I'm using React, Redux, Axios, and Thunk. In a redux-action the app makes a GET call to receive data but I need to cancel it or asked users to see if they want to cancel it after let's say 10 seconds. I read about Axios cancelation but don't know how to use it with the time manner.
reactjs redux redux-thunk
add a comment |
up vote
0
down vote
favorite
I'm using React, Redux, Axios, and Thunk. In a redux-action the app makes a GET call to receive data but I need to cancel it or asked users to see if they want to cancel it after let's say 10 seconds. I read about Axios cancelation but don't know how to use it with the time manner.
reactjs redux redux-thunk
@CupofJava could you show me some of the codings and post it as an answer? thanks indeed
– farm command
Nov 19 at 22:11
add a comment |
up vote
0
down vote
favorite
up vote
0
down vote
favorite
I'm using React, Redux, Axios, and Thunk. In a redux-action the app makes a GET call to receive data but I need to cancel it or asked users to see if they want to cancel it after let's say 10 seconds. I read about Axios cancelation but don't know how to use it with the time manner.
reactjs redux redux-thunk
I'm using React, Redux, Axios, and Thunk. In a redux-action the app makes a GET call to receive data but I need to cancel it or asked users to see if they want to cancel it after let's say 10 seconds. I read about Axios cancelation but don't know how to use it with the time manner.
reactjs redux redux-thunk
reactjs redux redux-thunk
asked Nov 19 at 21:59
farm command
6518
6518
@CupofJava could you show me some of the codings and post it as an answer? thanks indeed
– farm command
Nov 19 at 22:11
add a comment |
@CupofJava could you show me some of the codings and post it as an answer? thanks indeed
– farm command
Nov 19 at 22:11
@CupofJava could you show me some of the codings and post it as an answer? thanks indeed
– farm command
Nov 19 at 22:11
@CupofJava could you show me some of the codings and post it as an answer? thanks indeed
– farm command
Nov 19 at 22:11
add a comment |
2 Answers
2
active
oldest
votes
up vote
0
down vote
//this statement your axious get
state = {data: };
componentWillMount(){
axios.get('https://yourwebsite.com')
.then(Response => this.setState({ data: Response.data}));
}
//this statement for your setTimeout() function
setTimeout(() => {
if(callPromise.isResolved()){
data.cancel('Canceled');
}
}, 15000)
Then you need data.setTimeout() funtion.
Maybe it will help you!
that.setTimeout()
i sthe patr that i don't know where/how to use it. would you please add more info to your answr, thanks
– farm command
Nov 19 at 22:21
add a comment |
up vote
0
down vote
Via the documentation from Axios, we can incorporate setTimeout
that checks the promise status of what we want to cancel
EDIT: It appears there is no standard to check whether a promise has been resolved or not, so you may be able to do something like this:
Where we can check to see if the promise is defined or not
const CancelToken = axios.CancelToken;
const source = CancelToken.source();
axios.get('/user/12345', {
cancelToken: source.token
}).catch(function (thrown) {
if (axios.isCancel(thrown)) {
console.log('Request canceled', thrown.message);
} else {
// handle error
}
});
const callPromise = axios.post('/user/12345', {
name: 'new name'
}, {
cancelToken: source.token
})
// cancel the request by checking the promise
setTimeout(() => {
if(!callPromise){
source.cancel('Operation canceled by the user.');
}
}, 10000)
We can also set an external variable that will be set when the promise is resolved
const CancelToken = axios.CancelToken;
const source = CancelToken.source();
let isResolved = false;
axios.post('/user/12345', {
name: 'new name'
}, {
cancelToken: source.token
}).then(res => {
isResolved = true;
})
// cancel the request by checking the promise
setTimeout(() => {
if(!isResolved){
source.cancel('Operation canceled by the user.');
}
}, 10000)
add a comment |
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
0
down vote
//this statement your axious get
state = {data: };
componentWillMount(){
axios.get('https://yourwebsite.com')
.then(Response => this.setState({ data: Response.data}));
}
//this statement for your setTimeout() function
setTimeout(() => {
if(callPromise.isResolved()){
data.cancel('Canceled');
}
}, 15000)
Then you need data.setTimeout() funtion.
Maybe it will help you!
that.setTimeout()
i sthe patr that i don't know where/how to use it. would you please add more info to your answr, thanks
– farm command
Nov 19 at 22:21
add a comment |
up vote
0
down vote
//this statement your axious get
state = {data: };
componentWillMount(){
axios.get('https://yourwebsite.com')
.then(Response => this.setState({ data: Response.data}));
}
//this statement for your setTimeout() function
setTimeout(() => {
if(callPromise.isResolved()){
data.cancel('Canceled');
}
}, 15000)
Then you need data.setTimeout() funtion.
Maybe it will help you!
that.setTimeout()
i sthe patr that i don't know where/how to use it. would you please add more info to your answr, thanks
– farm command
Nov 19 at 22:21
add a comment |
up vote
0
down vote
up vote
0
down vote
//this statement your axious get
state = {data: };
componentWillMount(){
axios.get('https://yourwebsite.com')
.then(Response => this.setState({ data: Response.data}));
}
//this statement for your setTimeout() function
setTimeout(() => {
if(callPromise.isResolved()){
data.cancel('Canceled');
}
}, 15000)
Then you need data.setTimeout() funtion.
Maybe it will help you!
//this statement your axious get
state = {data: };
componentWillMount(){
axios.get('https://yourwebsite.com')
.then(Response => this.setState({ data: Response.data}));
}
//this statement for your setTimeout() function
setTimeout(() => {
if(callPromise.isResolved()){
data.cancel('Canceled');
}
}, 15000)
Then you need data.setTimeout() funtion.
Maybe it will help you!
edited Nov 19 at 22:26
answered Nov 19 at 22:17
Kaan Karamanoğlu
133
133
that.setTimeout()
i sthe patr that i don't know where/how to use it. would you please add more info to your answr, thanks
– farm command
Nov 19 at 22:21
add a comment |
that.setTimeout()
i sthe patr that i don't know where/how to use it. would you please add more info to your answr, thanks
– farm command
Nov 19 at 22:21
that
.setTimeout()
i sthe patr that i don't know where/how to use it. would you please add more info to your answr, thanks– farm command
Nov 19 at 22:21
that
.setTimeout()
i sthe patr that i don't know where/how to use it. would you please add more info to your answr, thanks– farm command
Nov 19 at 22:21
add a comment |
up vote
0
down vote
Via the documentation from Axios, we can incorporate setTimeout
that checks the promise status of what we want to cancel
EDIT: It appears there is no standard to check whether a promise has been resolved or not, so you may be able to do something like this:
Where we can check to see if the promise is defined or not
const CancelToken = axios.CancelToken;
const source = CancelToken.source();
axios.get('/user/12345', {
cancelToken: source.token
}).catch(function (thrown) {
if (axios.isCancel(thrown)) {
console.log('Request canceled', thrown.message);
} else {
// handle error
}
});
const callPromise = axios.post('/user/12345', {
name: 'new name'
}, {
cancelToken: source.token
})
// cancel the request by checking the promise
setTimeout(() => {
if(!callPromise){
source.cancel('Operation canceled by the user.');
}
}, 10000)
We can also set an external variable that will be set when the promise is resolved
const CancelToken = axios.CancelToken;
const source = CancelToken.source();
let isResolved = false;
axios.post('/user/12345', {
name: 'new name'
}, {
cancelToken: source.token
}).then(res => {
isResolved = true;
})
// cancel the request by checking the promise
setTimeout(() => {
if(!isResolved){
source.cancel('Operation canceled by the user.');
}
}, 10000)
add a comment |
up vote
0
down vote
Via the documentation from Axios, we can incorporate setTimeout
that checks the promise status of what we want to cancel
EDIT: It appears there is no standard to check whether a promise has been resolved or not, so you may be able to do something like this:
Where we can check to see if the promise is defined or not
const CancelToken = axios.CancelToken;
const source = CancelToken.source();
axios.get('/user/12345', {
cancelToken: source.token
}).catch(function (thrown) {
if (axios.isCancel(thrown)) {
console.log('Request canceled', thrown.message);
} else {
// handle error
}
});
const callPromise = axios.post('/user/12345', {
name: 'new name'
}, {
cancelToken: source.token
})
// cancel the request by checking the promise
setTimeout(() => {
if(!callPromise){
source.cancel('Operation canceled by the user.');
}
}, 10000)
We can also set an external variable that will be set when the promise is resolved
const CancelToken = axios.CancelToken;
const source = CancelToken.source();
let isResolved = false;
axios.post('/user/12345', {
name: 'new name'
}, {
cancelToken: source.token
}).then(res => {
isResolved = true;
})
// cancel the request by checking the promise
setTimeout(() => {
if(!isResolved){
source.cancel('Operation canceled by the user.');
}
}, 10000)
add a comment |
up vote
0
down vote
up vote
0
down vote
Via the documentation from Axios, we can incorporate setTimeout
that checks the promise status of what we want to cancel
EDIT: It appears there is no standard to check whether a promise has been resolved or not, so you may be able to do something like this:
Where we can check to see if the promise is defined or not
const CancelToken = axios.CancelToken;
const source = CancelToken.source();
axios.get('/user/12345', {
cancelToken: source.token
}).catch(function (thrown) {
if (axios.isCancel(thrown)) {
console.log('Request canceled', thrown.message);
} else {
// handle error
}
});
const callPromise = axios.post('/user/12345', {
name: 'new name'
}, {
cancelToken: source.token
})
// cancel the request by checking the promise
setTimeout(() => {
if(!callPromise){
source.cancel('Operation canceled by the user.');
}
}, 10000)
We can also set an external variable that will be set when the promise is resolved
const CancelToken = axios.CancelToken;
const source = CancelToken.source();
let isResolved = false;
axios.post('/user/12345', {
name: 'new name'
}, {
cancelToken: source.token
}).then(res => {
isResolved = true;
})
// cancel the request by checking the promise
setTimeout(() => {
if(!isResolved){
source.cancel('Operation canceled by the user.');
}
}, 10000)
Via the documentation from Axios, we can incorporate setTimeout
that checks the promise status of what we want to cancel
EDIT: It appears there is no standard to check whether a promise has been resolved or not, so you may be able to do something like this:
Where we can check to see if the promise is defined or not
const CancelToken = axios.CancelToken;
const source = CancelToken.source();
axios.get('/user/12345', {
cancelToken: source.token
}).catch(function (thrown) {
if (axios.isCancel(thrown)) {
console.log('Request canceled', thrown.message);
} else {
// handle error
}
});
const callPromise = axios.post('/user/12345', {
name: 'new name'
}, {
cancelToken: source.token
})
// cancel the request by checking the promise
setTimeout(() => {
if(!callPromise){
source.cancel('Operation canceled by the user.');
}
}, 10000)
We can also set an external variable that will be set when the promise is resolved
const CancelToken = axios.CancelToken;
const source = CancelToken.source();
let isResolved = false;
axios.post('/user/12345', {
name: 'new name'
}, {
cancelToken: source.token
}).then(res => {
isResolved = true;
})
// cancel the request by checking the promise
setTimeout(() => {
if(!isResolved){
source.cancel('Operation canceled by the user.');
}
}, 10000)
edited Nov 19 at 22:29
answered Nov 19 at 22:16
Cup of Java
62021028
62021028
add a comment |
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53383238%2fhow-to-cancel-an-axios-call-after-some-specific-time%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
@CupofJava could you show me some of the codings and post it as an answer? thanks indeed
– farm command
Nov 19 at 22:11