[英]i want to execute axios request after one is finished
我有axios請求,該請求獲取一些數據並將其存儲在本地存儲中,我想在第一個請求完成后再發出一個請求,並使用第一個請求響應數據
this.$http.post("http://localhost:8000/oauth/token", data).then(response => {
this.$auth.setToken(
response.data.access_token,
response.data.expires_in + Date.now()
);
}).then(()=>{
this.$http.get("user").then(response => {
this.$auth.setAuthenticatedUser(response.data);
this.user = response.data;
this.image = response.data.image;
this.$bus.$emit('logged_user',response.data);
});
this.$http
.get("http://localhost:8000/api/tpa/provider/status")
.then(res => {
localStorage.setItem("tpa_provider", JSON.stringify(res.data));
});
this.$bus.$emit('logged_user',this.user);
if(this.$auth.isAuth()){
this.$router.push({"name":"home"});
}
我也嘗試使用異步等待,但我無法實現
選項1.您可以將結果傳遞給下一個,然后通過return
。
this.$http.post("http://localhost:8000/oauth/token", data).then(response => {
// ...
return response;
}).then((myResponse) => {
console.log('first result', myResponse);
// ...
});
選項2。您可以將第一個請求的結果存儲在superscope變量中。
let myResponse;
this.$http.post("http://localhost:8000/oauth/token", data).then(response => {
myResponse = response;
// ...
}).then(() => {
console.log('first result', myResponse);
// ...
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.