Axios不断将GET发送到错误的端点

时间:2018-07-13 16:22:18

标签: javascript vue.js axios

我将axios配置为向运行在localhost:8081的Express后端发送请求

src / htpp / index.js

import axios from 'axios'

export default axios.create({
  baseURL: 'http://localhost:8081/api/',
  timeout: 1000,
  headers: {'X-Custom-Header': 'foobar'}
})

然后在vue组件中,我发送一个发布请求以发布表单数据

src / components / create-list.vue

import http from '../http'

http.request({
  url: 'lists',
  method: 'post',
  data: {
    displayName: this.displayName,
    listName: this.listName,
    userEmail: this.userEmail
  }
})

提交表单时,将发送以下请求

请求网址:http://localhost:8080/?list-name=Test&user-email=test%40test.de&user-name=Test

请求方法:GET

我期待中

请求网址:http://localhost:8081/api/lists

请求方法:POST

请求正文:{“列表名称”:“测试”,“用户电子邮件”:“ test@test.d”,“用户名称”:“测试”}

我在这里做什么错了?

2 个答案:

答案 0 :(得分:0)

好,我发现了问题 在我的Vue组件模板中,有一个按钮正在提交我的表单,显然默认行为是发送此GET请求(即使它不是type =“ submit”按钮) 防止单击事件的默认值或更改平衡器以解决问题 仅供参考,我使用了Chrome 67.0.3396.99

答案 1 :(得分:0)

也许您可以尝试像这样导入index.js。确保您的路径正确。 也可以尝试将http名称更改为其他名称,如Chad Moore所述。

import http from '../http/index'