试图弄清楚如何使用Axios在Vue.js上进行GET请求,但未能做到

时间:2019-01-03 20:21:58

标签: vue.js vuejs2 axios

我的Vue项目是使用webpack-simple模板创建的,所以现在我的src文件夹中只有main.js和App.vue。 Main.js看起来像这样:

import Vue from 'vue'
import App from './App.vue'

new Vue({
  el: '#app',
  render: h => h(App)
})

和App.vue看起来像这样:

<template>
<div id="app">
</div>
</template>

<script>
import axios from 'axios';

axios.defaults.baseURL = 'https://www.bungie.net/Platform';
axios.defaults.headers.common = {
  'X-API-Key': 'ecab73fd6c714d02b64f0c75503671d1'
};

export default {
  axios.get('/User/GetBungieNetUserById/1/')
  .then(function(response) {
    console.log(response.data);
    console.log(response.status);
  });
}
</script>

<style lang="scss">

</style>

我正在遵循有关如何执行GET请求的Axios Github页面说明,但是我似乎做错了什么。我的目标是向以下位置发出GET请求:

https://www.bungie.net/Platform/User/GetBungieNetUserById/1/

仅当我具有X-API-Key标头时才能这样做。

因此,我设置了

axios.defaults.baseURL = 'https://www.bungie.net/Platform';
axios.defaults.headers.common = {
  'X-API-Key': 'ecab73fd6c714d02b64f0c75503671d1'
};

然后我发出GET请求。可悲的是我编译失败:

./ node_modules / babel-loader / lib!./ node_modules / vue-loader / lib / selector.js?type = script&index = 0!./ src / App.vue 模块构建失败:SyntaxError:C:/MAMP/htdocs/Destiny/src/App.vue:意外令牌,预期为(14:7)

我对Vue很陌生,所以我犯的错误可能真的很愚蠢。希望能对您有所帮助。

1 个答案:

答案 0 :(得分:1)

假设您要在安装Vue组件时运行以下代码:

export default {
  mounted() {
    axios.get('/User/GetBungieNetUserById/1/')
    .then(function(response) {
      console.log(response.data);
      console.log(response.status);
    });
  },
}

您不能只在export default块中拍打原始JS-Vue期望a component definition,具有各种属性,其中一些可能是/包含函数。