Laravel 5.7 ajax 请求 500(内部服务器错误)

Posted

技术标签:

【中文标题】Laravel 5.7 ajax 请求 500(内部服务器错误)【英文标题】:Laravel 5.7 ajax request 500 (Internal Server Error) 【发布时间】:2019-02-19 08:05:09 【问题描述】:

我正在尝试使用 Laravel 和 Ajax 插入数据。当我提交表单时出现以下错误:500(内部服务器错误)

路线如下:

Route::post('/insert-data', 'AjaxController@insertData');

控制器:

    public function insertData(Request $request) 

 if($request->ajax()) 
        $members= Member::create($request->all());

        return response($request->all());
    




jquery:

$.ajaxSetup(
    headers: 
        'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
    
   );

    $('#submitInsert').on('click',function(e)
         e.preventDefault();
         var data = $(this).parent('form').serialize();
         var url = $(this).parent('form').attr('action');


         $.ajax(
             type: 'post',
             url : url,
             dataType : 'json',

             success: function(data) 
                 console.log(data);
             

         );
           );

我也放了

    <meta name="csrf-token" content=" csrf_token() ">

但我仍然收到 500(内部服务器错误)

【问题讨论】:

500 表示服务器端有问题..你能检查一下 Laravel 的日志(它在storage/logs/laravel.log)吗? 在日志中一切正常 您是否在.env 或您的配置文件中启用了调试模式? 如果 Laravel 日志文件中不存在任何日志,那么您应该尝试重新启动 nginx(或其他)和 php-fpm。之后,您应该检查您的 php-fpm 和 Web 服务器(nginx 等)日志文件。 发现问题。我忘了在 ajax 调用中传递序列化数据.. 【参考方案1】:

你可以试试这个脚本吗:

$.ajax(
             type: 'post',
             url : url,
             dataType : 'json',

             data: 
            action: "whatever action you want to happen write it here"
        ,
...

);

【讨论】:

以上是关于Laravel 5.7 ajax 请求 500(内部服务器错误)的主要内容,如果未能解决你的问题,请参考以下文章

Laravel:为啥我的 ajax 请求返回“500(内部服务器错误)”?

Laravel 5 App - AJAX 发布请求不接受令牌并引发 500 内部服务器错误

Laravel 5 App - AJAX Post请求不接受令牌并抛出500内部服务器错误

Laravel 图片上传使用 ajax 500 内部服务器错误

Laravel ajax 帖子返回 500 内部服务器错误

e.preventDefault 不适用于 laravel 5.7