【发布时间】: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 调用中传递序列化数据..