我对axios遇到了一个前所未有的奇怪问题,从laravel后端到vue前端的任何返回响应都是空的。.
return response()->json(['message' => 'Success!']);
这行是在帖子被编辑之后...
我也尝试过:
return response(['message' => 'Success!']);
return ['message' => 'Success!'];
当我console.log()
回复时:
axios.post(url).then((response)=>{
console.log(response);
});
我得到的所有关于响应和数据的信息都为空字符串,我在Laravel 5.7中遇到了这个问题,在5.6中可以正常工作...
答案 0 :(得分:0)
确保您的刀片中的头部csrf_token
xyz.blade.php
<head>
<meta name="csrf-token" content="{{ csrf_token() }}">
</head
从Vue或React:
确保您的方法正确获取,发布,删除,放入路由文件(web.php
或其他任何文件)
axios.post('/some/url', {
post_param_a : 1,
post_param_b : 2
}).then(response => {
//your value should be in response.data object
console.log(response.data.message)
})
.catch(function (error) {
console.log(error);
});
内部控制器:
public function methodName(){
return response()->json(['message' => 'Success!']);
}
或者,您也可以调试 右键单击浏览器>>检查>>网络选项卡>>请参阅屏幕截图。
您也可以dd($response)
并在检查器的“响应”部分中查看