Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/api/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vue.js/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Api 安装在Vue中时,Axios数据未转入数据_Api_Vue.js_Vuejs2_Twitch_Twitch Api - Fatal编程技术网

Api 安装在Vue中时,Axios数据未转入数据

Api 安装在Vue中时,Axios数据未转入数据,api,vue.js,vuejs2,twitch,twitch-api,Api,Vue.js,Vuejs2,Twitch,Twitch Api,我试图通过Vue 2中的axios调用从Twitch API(我们使用POST而不是GET)调用数据,但它没有像我期望的那样工作。我可以记录访问\u令牌,但不能记录获取请求中的数据 我用API请求创建了一个单独的文件,该文件导入到Vue组件中,如下所示: 从“axios”导入axios; //Twitch授权的变量 const client_id=process.env.VUE_APP_client_id; const client_secret=process.env.VUE_APP_clie

我试图通过Vue 2中的axios调用从Twitch API(我们使用POST而不是GET)调用数据,但它没有像我期望的那样工作。我可以记录
访问\u令牌
,但不能记录获取请求中的数据

我用API请求创建了一个单独的文件,该文件导入到Vue组件中,如下所示:

从“axios”导入axios;
//Twitch授权的变量
const client_id=process.env.VUE_APP_client_id;
const client_secret=process.env.VUE_APP_client_secret;
const grant_type=“客户端凭据”;
const cors_server=“process.env.VUE_APP_cors_ANYWHERE_server”;
//从Twitch Dev帐户获取访问令牌
导出异步函数getAccessToken(){
试一试{
const response=等待axios.post(
`https://id.twitch.tv/oauth2/token?client_id=${client\u id}&client\u secret=${client\u secret}&grant\u type=${grant\u type}`
);
const data=wait response.data.access_令牌;
返回数据;
}捕获(错误){
日志(“错误:”,错误);
}
};
//从API调用游戏
导出函数getGames(accessToken){
axios({
url:`${cors_服务器}https://api.igdb.com/v4/games`,
方法:“POST”,
标题:{
“接受”:“应用程序/JSON”,
“客户端ID”:客户端ID,
'Authorization':'Bearer${accessToken}`,
},
数据:“字段*;”,
})
。然后(res=>{
console.log(res.data);
返回res.data;
})
.catch(错误=>{
控制台错误(error);
});
};
我已将其导入组件,如下所示:

从“/api_请求”导入{getAccessToken,getGames}”;
我对数据的定义如下:

data(){
返回{
游戏:空,
accessToken:“”,
}
},
我这样调用
mounted
中的数据

//从IGDB调用数据
异步装入(){
this.accessToken=等待getAccessToken();
getGames(this.accessToken)。然后(res=>{
这个游戏=res;
console.log(this.games);
});

我尝试了不同的方法来调用
getGames
中的
mounted
,但我无法将其正确保存在
数据中。我应该用不同的方法调用它吗?导入它会导致问题吗?我应该在组件内部创建一个方法吗?

你几乎做到了。
getGames()
需要返回
axios()
,以便调用者可以接收响应数据的值:

导出函数getGames(accessToken){
返回axios({/*…*/})
}
然后调用方可以等待它:

async-mounted(){
this.games=等待getGames(this.accessToken)
}

就这样!谢谢!