Javascript 在Laravel API中获取HTTP Post Vue数据
在我的LaravelAPI中,我很难获取从Vue发送的HTTP Post数据 我所拥有的非常简单Javascript 在Laravel API中获取HTTP Post Vue数据,javascript,php,laravel,vue.js,axios,Javascript,Php,Laravel,Vue.js,Axios,在我的LaravelAPI中,我很难获取从Vue发送的HTTP Post数据 我所拥有的非常简单 axios({ 方法:“post”, 网址:'http://localhost:8888/api/vue-数据', 数据:{firstName:“Dally”}, 配置:{headers:{'Content Type':'multipart/form data'} }) 。然后(响应=>{ console.log(response.data) }) .catch(e=>{ 此.errors.pus
axios({
方法:“post”,
网址:'http://localhost:8888/api/vue-数据',
数据:{firstName:“Dally”},
配置:{headers:{'Content Type':'multipart/form data'}
})
。然后(响应=>{
console.log(response.data)
})
.catch(e=>{
此.errors.push(e)
})
如果您向Laravel发送邮件,则需要在请求中指定CSRF令牌
添加到您的
:
如果您发布到Laravel,则需要在请求中指定CSRF令牌 添加到您的:
<meta name="csrf-token" content="{{ csrf_token() }}">
我希望这对你有帮助。因为我看不出你犯了什么错误,我最好的客人是这个 错误是因为您试图获取如下数据
return$request->firstName代码>,但在显示的图像中,您正在发送
{
params : {
firstName : 'Dally'
}
}
首先尝试获取params
,然后返回所需的参数
public function vueData(Request $request)
{
$data = $request->input('params');
return $data->firstName;
//if this fails, maybe params contains a array so do
//return $data['firstName'];
}
解决了这个问题。这真是个愚蠢的错误,真让人难堪。我的控制器中缺少以下内容
use Illuminate\Http\Request;
对$request->all()
进行调试怎么样?然后找出是否有数据键入了firstName
那里?但是为什么我不能在Laravel中获取它呢?
发生了什么事?您是否收到错误?您需要发送FormData对象,因为您正在设置'multipart/form data'
已更新了我的原始帖子。这500个错误说明了什么?如果您使用web.php进行路由匹配,您只需要这样做。我使用的是api.php,所以我认为这不是问题所在。如果您使用web.php作为路由,您只需要这样做。我使用的是api.php,所以我认为这不是问题所在。
{
params : {
firstName : 'Dally'
}
}
public function vueData(Request $request)
{
$data = $request->input('params');
return $data->firstName;
//if this fails, maybe params contains a array so do
//return $data['firstName'];
}
use Illuminate\Http\Request;