繁体   English   中英

Laravel:$ request-> all()使用json xhr调用时给出空数组

[英]Laravel: $request->all() gives empty array when called with json xhr

由于某种原因,我不能使用$ .ajax,而只能使用XMLHttpRequest。 我需要将json发送到laravel控制器。 我尝试的时候只有500

这是我发出请求的方式:

    const sendEdit = function(){
        let xhr = new XMLHttpRequest();
        xhr.open("POST", "/blog/edit");
        xhr.setRequestHeader("Content-Type","application/json");
        xhr.setRequestHeader('X-CSRF-TOKEN',   $('meta[name="csrf-token"]').attr('content'))
        let data = {};
        data.header = $("#editHeader").val();
        data.body = $("#editBody").val();
        data.postId = {{$post->id}};
        data.userId = {{Auth::user()->id}}
        xhr.onreadystatechange = function(d){
        }
        xhr.send([data]);
    }

控制器返回500。当我尝试var_dump $ request-> json()或$ request-> all()时,显示了错误。 这是我的控制器。 请帮助我访问JSON中的数据

 public function edit(Request $request){
         echo(var_dump($request->all()));
    }

问题是在发送请求之前未使用JSON.stringify()。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM