在前端開發中,經常需要向后端請求數據,在請求數據的過程中,服務端返回的數據通常分成兩部分:1、響應體。2、響應頭。
響應體是服務端返回的具體數據,例如JSON數據。而我們這篇文章要講的是如何在Vue中取出響應頭。
在Vue中發送請求使用的是axios插件,因此我們需要在axios中去獲取響應頭。
// axios請求攔截器 axios.interceptors.request.use( ? config =>{ ? ? //發送請求前操作,比如loading ? ? if (localStorage.token) { ? ? ? config.headers.Authorization = `Bearer ${localStorage.token}`; ? ? } ? ? return config; ? }, ? err =>{ ? ? return Promise.reject(err); ? } ); //axios響應攔截器 axios.interceptors.response.use( ? response =>{ ? ? if (response.headers.authorization) { ? ? ? localStorage.setItem("token", response.headers.authorization); ? ? } ? ? return response; ? }, ? error =>{ ? ? return Promise.reject(error.response); ? } );
代碼中,我們使用axios的攔截器,可以在請求頭中和響應頭中取出數據。在axios的請求攔截器中,我們可以在請求頭中添加自定義的信息。而在響應攔截器中,可以獲取響應頭中的信息。
在上面的代碼中,我們獲取了響應頭中的Authorization信息,如果存在這個信息,就把它保存到本地存儲中。這里的Authorization是一個自定義的HTTP請求頭,它包含認證信息。前端發送登錄請求時,服務端在響應頭中返回Token,我們需要把這個Token保存到本地存儲中,需要請求受保護的接口時,需要把本地存儲中的Token添加到請求頭中。
以上就是關于Vue中如何取出響應頭的詳細介紹,通過攔截器我們可以在請求頭和響應頭中添加自定義信息,實現登錄認證等功能。