thur
thur

Reputation: 1074

How to redirect user inside vue-resource http interceptor?

I want to redirect the user when I have an 401, but I can't access the router from this context:

  Vue.http.interceptors.push(function(request, next) {
    // continue to next interceptor
    next(function(response) {
        if(response.status == 401){
            //redirect user here
            //tried: Vue.$router and Vue.$route 
        }

    });
  });

How can I make this?

Using: Vue-router and Vue-resource

Upvotes: 9

Views: 4751

Answers (1)

Bert
Bert

Reputation: 82499

const router = new VueRouter({
  routes
})

Vue.http.interceptors.push(function(request, next) {
    // continue to next interceptor
    next(function(response) {
        if(response.status == 401){
            router.push(...) 
        }
    });
 });

Upvotes: 10

Related Questions