Laravel 5.6 - 从 jQuery 传递到 Laravel 控制器的问题

Laravel 5.6 - Issue passing from jQuery to Laravel Controller

我在从带有 ajax 请求的 blade 文件传递​​到我的 Laravel 控制器时遇到了一些问题。据我所知,我已经适当地设置了我的路线。

路线

Route::post('/aquarium/{id}/parameters', 'AquariumController@paramUpdate')->name('paramUpdate');

Laravel 函数

use App\Aquarium;
use Carbon\Carbon;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;

public function paramUpdate($id)
{
    $params = $_POST['parameters'];
    $aquarium = Aquarium::find($id);

    $aquarium->parameters = $params;

    $aquarium->save();

    return "test";
    //return redirect('/aquarium/'.$id);
}

Ajax 请求

var jsonParams = JSON.stringify(params);

$.ajax({
    type: "POST",
    url: "{{ route('paramUpdate', $aquarium->id) }}",
    data: { parameters: jsonParams },
    success: function(response) {
        console.log(response);
    },
    error: function() {
        console.log("Ajax error");
    }
});

目的是将jsonParams变量传递给controller,然后保存到数据库的parameters字段中。数据库已配置且存在记录。

已修复 - 我添加了

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

到页眉,然后

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

到脚本。通过使用网络选项卡查看返回的错误,然后从那里进行一些谷歌搜索来解决这个问题。