Laravel 5.6 控制器 post 操作方法截断布尔值

Laravel 5.6 controller post action methods truncates boolean value

我正在制作一个 AJAX post 到 Laravel 的控制器,如下所示。

<script>
    let data = {
       a: true,
       b: false
    }

    this.axios.post(this.url, data)
      .then (result => console.log(result) )
      .catch (result => console.log(result) )
</script>

在 Laravel 5.6 控制器 post 操作方法的后端,我试图检查前端的 AJAX 调用 post 编辑了哪些值。然后我将它记录到 laravel 日志文件。

<?php

   public function myPostHandler(Request $request) {
         $data = $request->all();
        \Log::info("Posted data = " . print_r($data, true));
   }
?>

在 laravel.log 文件中...它显示值为空,如下所示 -

[a] =>
[b] => 

所以我的问题是我应该如何将布尔数据发送到控制器,这样它才不会丢失?并且还想了解为什么 Laravel 会这样以及为什么我的布尔值会被修剪?是中间件引起的吗?

PS:以下是我的路线,没有任何问题:

 Route::get('something/{catchall}', [
            'uses' => 'myController@index'
        ])->where('catchall', '(.*)');

 Route::post('something/{catchall}', [
            'uses' => 'myController@update'
        ])->where('catchall', '(.*)');

在方法"myPostHandler"中接收到的数据是可以的。 我猜 \Log::info 将布尔类型写入字符串/ 尝试在 log

之前转换数据
    $data = $request->all();
    foreach($data as $key => $elem){
        if (is_bool($elem)) {
            $data[$key] = ($elem) ? 'true' : 'false';
        }
    }
    \Log::info("Posted data = " . print_r($data, true));