Heim >Web-Frontend >js-Tutorial >Axios-Login-Request-Interceptor

Axios-Login-Request-Interceptor

php中世界最好的语言
php中世界最好的语言Original
2018-04-08 14:37:283154Durchsuche

Dieses Mal bringe ich Ihnen den Axios-Login-Request-Interceptor. Was sind die Vorsichtsmaßnahmen für die Implementierung des Axios-Login-Request-Interceptors?

Wenn wir Schnittstellenanforderungen stellen, z. B. bei der Beurteilung des Anmeldezeitlimits, gibt die Schnittstelle normalerweise einen bestimmten Fehlercode zurück. Wenn wir dann für jede Schnittstelle eine zeit- und arbeitsaufwändige Schnittstelle beurteilen, können wir verwenden Der Interceptor führt ein einheitliches Abfangen von HTTP-Anfragen durch.

1. Axios installieren und konfigurieren

cnpm install --save axios 

Wir können eine js-Datei erstellen, um diese einheitliche Verarbeitung durchzuführen Erstellen Sie wie folgt eine neue axios.js

import axios from 'axios' 
import { Indicator } from 'mint-ui'; 
import { Toast } from 'mint-ui'; 
// http request 拦截器 
axios.interceptors.request.use( 
  config => { 
    Indicator.open() 
    return config; 
  }, 
  err => { 
    Indicator.close() 
    return Promise.reject(err); 
  }); 
// http response 拦截器 
axios.interceptors.response.use( 
  response => { 
    Indicator.close() 
    return response; 
  }, 
  error => { 
    Indicator.close() 
  }); 
export default axios

und führen Sie dann diese js-Datei in main.js

import axios from './axio'; 
Vue.prototype.$axios = axios;

ein, damit Sie axios zum Anfordern verwenden können Wird in Komponenten von This.axios verwendet.

this.$axios({ 
    url:requestUrl+'homePage/v1/indexNewPropertiesResult', 
    method:'POST', 
   }).then(function(response){ //接口返回数据 
    console.log(response) 
    that.modulesArr=response.data.data.modules; 
//   that.getRecommendGoods(0); 
   });

Nur ​​über die Axios-Anforderungsschnittstelle kann es abgefangen werden. Jetzt kann es in axios.js abgefangen werden, und Sie können die von Ihnen benötigten Vorgänge in den beiden Zuständen ausführen 🎜>

Ergänzung:

Axios verwendet Interceptoren, um alle http-Anfragen einheitlich zu verarbeiten

Axios verwendet Interceptoren

, um Anfragen oder Antworten abzufangen, bevor sie bis dahin verarbeitet oder abgefangen werden.

•http-Request-Interceptor

// 添加请求拦截器
axios.interceptors.request.use(function (config) {
  // 在发送请求之前做些什么
  return config;
 }, function (error) {
  // 对请求错误做些什么
  return Promise.reject(error);
 });

•http-Response-Interceptor

// 添加响应拦截器
axios.interceptors.response.use(function (response) {
  // 对响应数据做点什么
  return response;
 }, function (error) {
  // 对响应错误做点什么
  return Promise.reject(error);
 });

• Interceptoren entfernen

var myInterceptor = axios.interceptors.request.use(function () {/*...*/});
axios.interceptors.request.eject(myInterceptor);

• Interceptoren für benutzerdefinierte Axios-Instanz hinzufügen

var instance = axios.create();
instance.interceptors.request.use(function () {/*...*/});

Ich glaube, das haben Sie Nachdem Sie den Fall in diesem Artikel gelesen haben, beherrschen Sie die Methode. Weitere spannende Informationen finden Sie in anderen verwandten Artikeln auf der chinesischen PHP-Website!

Empfohlene Lektüre:

Wie Vue-Projekte nach Umgebung verpackt werden sollten

Spezifische Schritte für die Verwendung von Vuex in React

Das obige ist der detaillierte Inhalt vonAxios-Login-Request-Interceptor. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn