我将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”,“用户名称”:“测试”}
我在这里做什么错了?
答案 0 :(得分:0)
好,我发现了问题 在我的Vue组件模板中,有一个按钮正在提交我的表单,显然默认行为是发送此GET请求(即使它不是type =“ submit”按钮) 防止单击事件的默认值或更改平衡器以解决问题 仅供参考,我使用了Chrome 67.0.3396.99
答案 1 :(得分:0)
也许您可以尝试像这样导入index.js。确保您的路径正确。 也可以尝试将http名称更改为其他名称,如Chad Moore所述。
import http from '../http/index'