axios預設是請求的時候不會帶上cookie的,需要通過設定withcredentials: true
來解決。
你可以擷取請求或響應在被 then 或者 catch 處理之前。舉個小例子:發ajax請求的時候需要有乙個loading動畫,而在請求回來之後需要把loading動畫關掉,就可以使用這個***來實現。
//新增請求***
axios.interceptors.request.use(config => , error => )
//新增響應***
axios.interceptors.response.use(response => , error => )
//如果不想要這個***也簡單,可以刪除***
var myinterceptor = axios.interceptors.request.use(function () )
axios.interceptors.request.eject(myinterceptor)
一般會將所有的ajax請求放在乙個模組中,新建乙個http.js
//設定請求baseurl
axios.defaults.baseurl = '/api'
//設定預設請求頭
axios.defaults.headers =
// 傳送請求前處理request的資料
axios.defaults.transformrequest = [function (data)
return newdata
}]// 帶cookie請求
axios.defaults.withcredentials = true
//get請求
function
get(url) )
}//post請求
function
post(url)
//匯出使用
export
const login = get('/login')
假設配合vue使用
// 引入login模組
}
vue.prototype.$http = axios //其他頁面在使用axios的時候直接 this.$http就可以了
除非頁面足夠簡單,不然我個人不太喜歡這種做法。 關於axios的一些封裝
關於axios的封裝 應用場景,專案中涉及100個ajax請求,其中 1.其中60個需要在請求頭header設定tokenheaders 用於許可權校驗 2.其中20個為上傳excel檔案需要在請求頭中設定content type headers 上面說的 1 2 3可以在全域性request攔截中...
關於Web Worker的一些心得
現在在平台中線程js中不能識別extjs的方法,原因是執行緒js無法引入extjsd的方法。onmessage只接收資料,不能在裡面直接寫方法,只能呼叫外面的方法 webwork.js無法訪問window,docment等物件 案例 建立乙個執行緒 varworker newworker test ...
一些關於BFC的心得
bfc的概念 什麼是bfc?bfc 塊級格式化上下文是前端頁面的視覺化css渲染的一部分,是布局過程中生成塊級盒子的區域,也是浮動元素與其他元素的互動限定區域。在bfc中,盒子從頂端開始垂直的乙個接乙個的排列,兩個盒子之間的垂直的間隔是由他們的margin值決定的,在乙個bfc中,兩個相鄰的塊級盒子...