vue拦截器实现统一token与兼容IE9步骤详解
这次给大家带来vue拦截器实现统一token与兼容IE9步骤详解,vue拦截器实现统一token与兼容IE9的注意事项有哪些,下面就是实战案例,一起来看一下。
项目中使用vue搭建前端页面,并通过axios请求后台api接口,完成数据交互。如果验证口令token写在在每次的接口中,也是个不小的体力活,而且也不灵活。这里分享使用vue自带拦截器,给每次请求的头部添加token,而且兼容了IE9。
import axios from 'axios'; // 这里的config包含每次请求的内容,在这里把token放到请求头 axios.interceptors.request.use(function (config) { let token = window.localStorage.getItem("tokenid"); //从缓存中取token if (token) { config.headers.Authorization = token; //将token放到请求头发送给服务器 //这里主要是为了兼容IE9 var browser = navigator.appName; var b_version = navigator.appVersion; if (browser == 'Netscape' && b_version.indexOf(';') < 0) { //火狐 } else { if (b_version.indexOf(';') < 0) { return config; } var version = b_version.split(";"); var trim_Version = version[1].replace(/[ ]/g, ""); if (browser == "Microsoft Internet Explorer" && trim_Version == "MSIE9.0") { //IE9 if (config.url.indexOf('?') > 0) { config.url = config.url + "&token=" + JSON.parse(token).value; } else { config.url = config.url + "?token=" + JSON.parse(token).value; } } } } else { localStorage.clear(); //清空缓存 if (router.currentRoute.name && router.currentRoute.name.toLowerCase() == "login") { //这里需要排除登陆(或者说是第一次请求获取token)的时候的请求验证,我这里没做处理 //我的后台api接口,并没有对login接口做token验证,所以这里不做处理 } else { //除登陆接口外,其他需要token验证的方法,会走这里且返回null return null; } } return config; }, function (err) { // return Promise.reject(err); }); // http response 拦截器 axios.interceptors.response.use( response => { return response; //请求成功的时候返回的data }, error => { try { if (error.response) { switch (error.response.status) { case 401://token过期,清除token并跳转到登录页面 localStorage.clear(); var baurl = window.location.href; router.replace({ path: 'login', query: { backUrl: baurl } }); return; } } return Promise.reject(error.response.data) } catch (e) { } });
写在后面。因为我的token放在了缓存中,所以在每次请求前,我会先在前端取出token,并验证其时效性,如果过期或不存在会先跳转到登陆页,而不会走拦截器去请求请求。具体也参考mounted()方法。
相信看了本文案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!
推荐阅读:
vue+jquery+lodash滑动时顶部悬浮固定功能实现详解
Atas ialah kandungan terperinci vue拦截器实现统一token与兼容IE9步骤详解. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Penyelesaian kepada token log masuk yang tidak sah termasuk menyemak sama ada token telah tamat tempoh, menyemak sama ada token itu betul, menyemak sama ada token telah diganggu, menyemak sama ada token sepadan dengan pengguna, mengosongkan cache atau kuki, menyemak sambungan rangkaian dan status pelayan , log masuk semula atau meminta token baharu Hubungi sokongan teknikal atau pembangun, dsb. Pengenalan terperinci: 1. Semak sama ada Token telah tamat tempoh Token log masuk biasanya mempunyai tempoh sah yang ditetapkan Setelah tempoh sah melebihi, ia akan dianggap tidak sah, dsb.

Masalah token log masuk tidak sah boleh diselesaikan dengan menyemak sambungan rangkaian, menyemak tempoh sah token, mengosongkan cache dan kuki, menyemak status log masuk, menghubungi pembangun aplikasi dan mengukuhkan keselamatan akaun. Pengenalan terperinci: 1. Semak sambungan rangkaian, sambung semula ke rangkaian atau tukar persekitaran rangkaian 2. Semak tempoh sah token, dapatkan token baharu, atau hubungi pembangun aplikasi 3. Kosongkan cache dan kuki, kosongkan penyemak imbas; cache dan Cookie, dan kemudian log masuk ke aplikasi sekali lagi 4. Semak status log masuk.

Redis menyimpan token pengguna Apabila mereka bentuk sistem yang serupa dengan e-dagang, keperluan biasa ialah setiap halaman perlu membawa maklumat pengguna yang dilog masuk. Terdapat dua penyelesaian biasa: menggunakan kuki untuk menyimpan dan menggunakan JWT untuk menyimpan Tetapi jika cache Redis digunakan dalam sistem, terdapat juga penyelesaian ketiga - caching token pengguna dalam Redis. Hasilkan token apabila log masuk dan simpan dalam Redis // Jana objek token dan simpan dalam redis redisTemplate.opsForHash().put("token","user",user)

Ramai pengguna akan mengalami pembekuan atau skrin biru semasa mengendalikan komputer Pada masa ini, kita perlu mencari versi win10 yang paling stabil untuk beroperasi Secara keseluruhannya, ia sangat mudah digunakan dan boleh menjadikan penggunaan harian anda lebih lancar. Versi win10 yang paling stabil dalam sejarah 1. Sistem asal tulen Win10 Di sini pengguna boleh menggunakan operasi yang mudah dan mempunyai kestabilan yang kuat, keselamatan dan keserasian diperkemas Versi win10 telah diperkemas dengan ketat dan banyak fungsi dan perkhidmatan yang tidak perlu telah dipadamkan. Selepas diperkemas, sistem mempunyai penggunaan CPU dan memori yang lebih rendah serta berjalan lebih pantas. 3. Win10 Lite Edition 1909 dipasang pada berbilang komputer dengan model perkakasan yang berbeza.

Semakin ramai pengguna mula menaik taraf sistem win11 Memandangkan setiap pengguna mempunyai tabiat penggunaan yang berbeza, ramai pengguna masih menggunakan pelayar ie11 Jadi apa yang perlu saya lakukan jika sistem win11 tidak boleh menggunakan pelayar ie. Adakah windows11 masih menyokong ie11? Mari kita lihat penyelesaiannya. Penyelesaian kepada masalah yang win11 tidak boleh menggunakan pelayar ie11 1. Pertama, klik kanan menu mula dan pilih "Command Prompt (Administrator)" untuk membukanya. 2. Selepas dibuka, terus masukkan "Netshwinsockreset" dan tekan Enter untuk mengesahkan. 3. Selepas pengesahan, masukkan "netshadvfirewallreset&rdqu

Bukan rahsia lagi bahawa Internet Explorer telah lama tidak disukai, tetapi dengan ketibaan Windows 11, realiti muncul. Daripada kadangkala menggantikan IE pada masa hadapan, Edge kini menjadi penyemak imbas lalai dalam sistem pengendalian terkini Microsoft. Buat masa ini, anda masih boleh mendayakan Internet Explorer dalam Windows 11. Walau bagaimanapun, IE11 (versi terkini) sudah mempunyai tarikh persaraan rasmi, iaitu 15 Jun 2022, dan jam semakin berdetik. Dengan mengambil kira perkara ini, anda mungkin perasan bahawa Internet Explorer kadangkala membuka Edge, dan anda mungkin tidak menyukainya. Jadi mengapa ini berlaku? wujud

1. Pengesahan log masuk token jwt: JSONWebToken. Ia ialah protokol pengesahan yang biasanya digunakan untuk mengesahkan maklumat identiti yang diminta dan kebenaran identiti. Terdiri daripada tiga bahagian: Header, Hayload, Signatureheader: iaitu maklumat pengepala, iaitu maklumat asas yang menerangkan token ini, format json {"alg":"HS256", //menunjukkan algoritma tandatangan, lalainya ialah HMACSHA256 ( ditulis sebagai HS256) "jenis":"JWT"//Menunjukkan jenis Token JWT ditulis secara seragam sebagai JWT}pa

Bagaimana untuk menyelesaikan ralat sintaks C++: 'expectedprimary-expressionbefore':'token'? Ralat sintaks adalah masalah biasa dalam pengaturcaraan C++. Salah satu ralat biasa ialah mesej ralat "expectedprimary-expressionbefore':'token". Ralat ini biasanya berlaku apabila menggunakan ungkapan bersyarat dan pengendali ternary. Artikel ini akan memperkenalkan punca ralat ini
