通过AJAX将数据传递到Laravel控制器

时间:2019-02-22 12:50:32

标签: jquery ajax laravel

我正在尝试从选择行数据表中读取数据,并将数据通过AJAX发布到我的Laravel控制器。但是这里有些问题。当我死掉并转储时,请全部“ dd(request()-> all());”在我的控制器中,我仅获得令牌值,并且数据为空。我不知道我在做什么错。我是jquery新手,请帮忙。

function AJAXCallCancelSimsByAPN(data) {
  var url = "/tools/sim/cancel";
  var type = "POST";

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

  console.log(data);

  jQuery.ajax({
    url: url,
    type: type,
    data: {
      "_token": $('meta[name="csrf-token"').attr('content'),
      "data": data
    },
    beforeSend: function () {},
    success: function (data) {
      try {
        //console.log(data);        

      } catch (err) {
        alert("Error running JS code from module: AJAXCallCancelSimsByAPN");
      }
    },
    error: function (url, jqXHR, textStatus, errorThrown) {
      alert("url: " + url + " error: " + jqXHR.responseText + " status: " + textStatus + " errorThrown: " + errorThrown);
    },
    complete: function () {}
  });
}

控制器

public function cancelSIMS(Request $request)
    {
       dd(request()->all());

        //
    }

输出

array:1 [
  "_token" => "7wc63lIYESIYNCVHYUe3YAI5KSxo1nqvTgtCr"
]

1 个答案:

答案 0 :(得分:0)

在发送之前尝试序列化数据:

var serialized = JSON.stringify(data);

data: {
  "_token": $('meta[name="csrf-token"').attr('content'),
  "data": serialized
},

该如何计算?