vue中使用axios php后端无法获得post数据的bug

博客围绕Vue中使用axios向后端发起post请求展开。原本请求时后端无法获取数据,报错显示为undefined。后通过使用axios的createElement,将传送数据stringfy并设置请求头进行改进。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

事件描述

在vue中引入了axios,向后端发起post请求。后端始终无法获得我post的几条数据。报错全部显示undefined

原本的写法
import axios from 'axios'

axios.post('/group8Interface/register.php',{
	username:'xx',
	password:'xx',
	email:'xx',
	author:'xx'
	}) .then(function (response) {
		console.log(response);
	})

正常情况下就应该在控制台打印出后端的结果了,但是priview始终报错4个值全都是undefined

改进

使用axios中的createElement,将要传送的数据stringfy ,并设置请求头

import axios from 'axios'
import Qs from 'qs'

var axiosAjax = axios.create({
	baseURL:'/',   //baseURL会自动加载url前面,根据自己需求配置,详情见官方文档
	transformRequest: [function (data) {  //这里的data就是后面.post方法中的第二个参数,不需要再在vue的data中定义了
		data = Qs.stringify(data); // 把要发送给后端的数据,通过Qs.stringify转换为表单查询参数
		return data;
	}],
	headers:{
		'Content-Type':'application/x-www-form-urlencoded'
	}
})
axiosAjax.post('/group8Interface/register.php',{
	username:'xx',
	password:'xx',
	email:'xx',
	author:'xx'
	}) .then(function (response) {
		console.log(response);
	})

这个解决方法也是我从网上搜的,欢迎意见和建议

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值