Axios响应数据在laravel中始终设置为空字符串

时间:2018-11-14 19:14:28

标签: laravel axios laravel-5.7 laravel-response

我对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中可以正常工作...

1 个答案:

答案 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!']);
}

或者,您也可以调试 右键单击浏览器>>检查>>网络选项卡>>请参阅屏幕截图。

enter image description here

您也可以dd($response)并在检查器的“响应”部分中查看

相关问题